aboutsummaryrefslogtreecommitdiffstats
path: root/Writerside
diff options
context:
space:
mode:
authorPinapelz <yukais@pinapelz.com>2024-04-07 01:19:17 -0700
committerPinapelz <yukais@pinapelz.com>2024-04-07 01:19:17 -0700
commitc95c0a56cd994ff09c3aee767949a88752642409 (patch)
tree0d89cb2e4a17cd8c004b3b2a3a1e648f1b720492 /Writerside
parent8e1b5f1acb359bdd2fd8fa644f97274e6429b779 (diff)
migrate docs to vitepress
Diffstat (limited to 'Writerside')
-rw-r--r--Writerside/api-docs/patchwork-archive-api.yml324
-rw-r--r--Writerside/c.list6
-rw-r--r--Writerside/hi.tree14
-rw-r--r--Writerside/topics/Default-topic.md80
-rw-r--r--Writerside/topics/IMissSomeone-VT.md38
-rw-r--r--Writerside/topics/Patchwork-API.md7
-rw-r--r--Writerside/topics/Patchwork-Archive.md9
-rw-r--r--Writerside/topics/VTuber-Captcha.md152
-rw-r--r--Writerside/topics/Welcome.md6
-rw-r--r--Writerside/v.list5
-rw-r--r--Writerside/writerside.cfg10
11 files changed, 0 insertions, 651 deletions
diff --git a/Writerside/api-docs/patchwork-archive-api.yml b/Writerside/api-docs/patchwork-archive-api.yml
deleted file mode 100644
index c17c0c6..0000000
--- a/Writerside/api-docs/patchwork-archive-api.yml
+++ /dev/null
@@ -1,324 +0,0 @@
-openapi: 3.0.3
-info:
- title: Patchwork Archive API
- description: |-
- API data from Patchwork Archive is public and **no API key** is required to access what is publicly available on the frontend.
-
- license:
- name: MIT License
- url: https://opensource.org/license/mit/
- version: MIT
-servers:
- - url: https://archive.pinapelz.moe/api
-tags:
- - name: channel
- description: Data regarding a specific channel
- - name: video
- description: Data regarding archived videos
- - name: database
- description: More detailed data regarding videos
-paths:
- /channel/{channel_id}:
- get:
- tags:
- - channel
- summary: Gets archived videos from a particular channel
- description: Gets a paginated result of archived videos matching a channel id
- parameters:
- - name: channel_id
- in: path
- description: YouTube Channel ID
- required: true
- schema:
- type: string
- - name: page
- in: query
- description: Page of video to show (starts on page 1)
- required: true
- schema:
- type: integer
- responses:
- '200':
- description: successful operation
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/Video'
- /channel_name:
- get:
- tags:
- - channel
- summary: Gets archived videos from a particular channel
- description: Gets a paginated result of archived videos matching a channel id
- parameters:
- - name: channel_id
- in: query
- description: YouTube Channel ID
- required: true
- schema:
- type: string
- responses:
- '200':
- description: successful operation
- content:
- application/json:
- schema:
- type: object
- properties:
- channel_name:
- type: string
- example: Erina Ch. エリナ・マキナ 【Phase Connect】
-
-
- /video/{video_id}:
- get:
- tags:
- - video
- summary: Get basic information regarding a specific video
- description: Pulls basic information about a video from fallback database only
- operationId: getBasicVideoInfo
- parameters:
- - name: video_id
- in: path
- description: YouTube Video ID
- required: true
- schema:
- type: string
- responses:
- '200':
- description: successful operation
- content:
- application/json:
- schema:
- type: object
- properties:
- channel_id:
- type: string
- example: UCupmjRr7kPgzXKh-cPxxGbg
- channel_name:
- type: string
- example: Erina Ch. エリナ・マキナ 【Phase Connect】
- description:
- type: string
- example: The very long description portion
- title:
- type: string
- example: イート / jon-YAKITORY feat.Ado - eat / cover by erina makina
- upload_date:
- type: string
- example: 2022-07-11
- video_id:
- type: string
- example: bX8-8928lcM
- '404':
- description: Video not found
- content:
- application/json:
- schema:
- type: object
- properties:
- error:
- type: string
- example: "Video ID does not exist"
-
- /random_video:
- get:
- tags:
- - video
- summary: Get a singular random video
- responses:
- '200':
- description: successful operation
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Video'
-
- /discover_videos:
- get:
- tags:
- - video
- summary: Get multiple random videos
- parameters:
- - name: count
- in: query
- description: Number of random videos to get (default=1)
- required: false
- schema:
- type: integer
- responses:
- '200':
- description: successful operation
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/Video'
-
- /search/results:
- get:
- tags:
- - video
- summary: Get paginated search results for some keyword
- parameters:
- - name: q
- in: query
- description: Keywords to search for
- required: true
- schema:
- type: string
- - name: page
- in: query
- description: Page number for results (default=1)
- required: false
- schema:
- type: integer
- responses:
- '200':
- description: successful operation
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/Video'
-
- /daily_featured_videos:
- get:
- tags:
- - video
- summary: Get today's daily features videos
- description: Either 1 or 2 video objects in an array depending on calculated hash
- responses:
- '200':
- description: successful operation
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/Video'
-
- /recently_archived:
- get:
- tags:
- - video
- summary: Get the 6 most recently archived videos
- responses:
- '200':
- description: successful operation
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/Video'
-
- /database/video_data/{video_id}:
- get:
- tags:
- - database
- summary: Get detailed information about the video if available
- description: If info.json generated by yt-dlp is available it will be directly delivered here, if not, fallback video data from the database is used instead
- parameters:
- - name: video_id
- in: path
- description: YouTube Video ID
- required: true
- schema:
- type: string
- responses:
- '200':
- description: successful operation.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Video'
-
- /database/status:
- get:
- tags:
- - database
- summary: Get the status of the database
- responses:
- '200':
- description: successful operation.
- content:
- application/json:
- schema:
- properties:
- OK:
- type: string
- example: "OK"
- '500':
- description: database is down
- content:
- application/json:
- schema:
- properties:
- FAIL:
- type: string
- example: "500"
-
- /storage/status:
- get:
- tags:
- - database
- summary: Get the status of the database
- description: Gets the number of videos archived and space used in GB
- responses:
- '200':
- description: successful operation.
- content:
- application/json:
- schema:
- properties:
- number_of_files:
- type: integer
- example: 3823
- storage_size:
- type: integer
- example: 900
-
-
-components:
- schemas:
- Channel:
- type: object
- required:
- - channel_name
- properties:
- channel_name:
- type: string
- example: Erina Ch. エリナ・マキナ 【Phase Connect】
- Video:
- type: object
- required:
- - channel_id
- - channel_name
- - description
- - title
- - upload_date
- - video_id
- properties:
- channel_id:
- type: string
- example: UCupmjRr7kPgzXKh-cPxxGbg
- channel_name:
- type: string
- example: Erina Ch. エリナ・マキナ 【Phase Connect】
- description:
- type: string
- example: The very long description portion
- title:
- type: string
- example: イート / jon-YAKITORY feat.Ado - eat / cover by erina makina
- upload_date:
- type: string
- example: 2022-07-11
- video_id:
- type: string
- example: bX8-8928lcM \ No newline at end of file
diff --git a/Writerside/c.list b/Writerside/c.list
deleted file mode 100644
index c4c77a2..0000000
--- a/Writerside/c.list
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE categories
- SYSTEM "https://resources.jetbrains.com/writerside/1.0/categories.dtd">
-<categories>
- <category id="wrs" name="Writerside documentation" order="1"/>
-</categories> \ No newline at end of file
diff --git a/Writerside/hi.tree b/Writerside/hi.tree
deleted file mode 100644
index 1780f40..0000000
--- a/Writerside/hi.tree
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE instance-profile
- SYSTEM "https://resources.jetbrains.com/writerside/1.0/product-profile.dtd">
-
-<instance-profile id="hi"
- name="Project Knowledge Base"
- start-page="Welcome.md">
- <toc-element topic="Welcome.md"/>
- <toc-element topic="Patchwork-Archive.md">
- <toc-element topic="Patchwork-API.md"/>
- </toc-element>
- <toc-element topic="VTuber-Captcha.md"/>
- <toc-element topic="IMissSomeone-VT.md"/>
-</instance-profile> \ No newline at end of file
diff --git a/Writerside/topics/Default-topic.md b/Writerside/topics/Default-topic.md
deleted file mode 100644
index dd51468..0000000
--- a/Writerside/topics/Default-topic.md
+++ /dev/null
@@ -1,80 +0,0 @@
-# This is the first topic
-
-<!--Writerside adds this topic when you create a new documentation project.
-You can use it as a sandbox to play with Writerside features, and remove it from the TOC when you don't need it anymore.
-If you want to re-add it for your experiments, click + to create a new topic, choose Topic from Template, and select the
-"Starter" template.-->
-
-## Add new topics
-You can create empty topics, or choose a template for different types of content that contains some boilerplate structure to help you get started:
-
-![Create new topic options](new_topic_options.png){ width=290 }{border-effect=line}
-
-## Write content
-%product% supports two types of markup: Markdown and XML.
-When you create a new help article, you can choose between two topic types, but this doesn't mean you have to stick to a single format.
-You can author content in Markdown and extend it with semantic attributes or inject entire XML elements.
-
-## Inject XML
-For example, this is how you inject a procedure:
-
-<procedure title="Inject a procedure" id="inject-a-procedure">
- <step>
- <p>Start typing and select a procedure type from the completion suggestions:</p>
- <img src="completion_procedure.png" alt="completion suggestions for procedure" border-effect="line"/>
- </step>
- <step>
- <p>Press <shortcut>Tab</shortcut> or <shortcut>Enter</shortcut> to insert the markup.</p>
- </step>
-</procedure>
-
-## Add interactive elements
-
-### Tabs
-To add switchable content, you can make use of tabs (inject them by starting to type `tab` on a new line):
-
-<tabs>
- <tab title="Markdown">
- <code-block lang="plain text">![Alt Text](new_topic_options.png){ width=450 }</code-block>
- </tab>
- <tab title="Semantic markup">
- <code-block lang="xml">
- <![CDATA[<img src="new_topic_options.png" alt="Alt text" width="450px"/>]]></code-block>
- </tab>
-</tabs>
-
-### Collapsible blocks
-Apart from injecting entire XML elements, you can use attributes to configure the behavior of certain elements.
-For example, you can collapse a chapter that contains non-essential information:
-
-#### Supplementary info {collapsible="true"}
-Content under such header will be collapsed by default, but you can modify the behavior by adding the following attribute:
-`default-state="expanded"`
-
-### Convert selection to XML
-If you need to extend an element with more functions, you can convert selected content from Markdown to semantic markup.
-For example, if you want to merge cells in a table, it's much easier to convert it to XML than do this in Markdown.
-Position the caret anywhere in the table and press <shortcut>Alt+Enter</shortcut>:
-
-<img src="convert_table_to_xml.png" alt="Convert table to XML" width="706" border-effect="line"/>
-
-## Feedback and support
-Please report any issues, usability improvements, or feature requests to our
-<a href="https://youtrack.jetbrains.com/newIssue?project=WRS">YouTrack project</a>
-(you will need to register).
-
-You are welcome to join our
-<a href="https://join.slack.com/t/writerside/shared_invite/zt-1hnvxnl0z-Nc6RWXTppRI2Oc566vumYw">public Slack workspace</a>.
-Before you do, please read our [Code of conduct](https://plugins.jetbrains.com/plugin/20158-writerside/docs/writerside-code-of-conduct.html).
-We assume that you’ve read and acknowledged it before joining.
-
-You can also always send an email to [writerside@jetbrains.com](mailto:writerside@jetbrains.com).
-
-<seealso>
- <category ref="wrs">
- <a href="https://plugins.jetbrains.com/plugin/20158-writerside/docs/markup-reference.html">Markup reference</a>
- <a href="https://plugins.jetbrains.com/plugin/20158-writerside/docs/manage-table-of-contents.html">Reorder topics in the TOC</a>
- <a href="https://plugins.jetbrains.com/plugin/20158-writerside/docs/local-build.html">Build and publish</a>
- <a href="https://plugins.jetbrains.com/plugin/20158-writerside/docs/configure-search.html">Configure Search</a>
- </category>
-</seealso>
diff --git a/Writerside/topics/IMissSomeone-VT.md b/Writerside/topics/IMissSomeone-VT.md
deleted file mode 100644
index 1b8a775..0000000
--- a/Writerside/topics/IMissSomeone-VT.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# IMissSomeone-VT
-
-Miss your favorite VTuber? "I Miss Someone VT" is a template for deploying a fansite for any particular VTuber.
-
-This page serves as documentation for necessary configuration
-
-# Environment Variables
-The Flask backend relies on environment variables for configuration.
-
-- **KV_REST_API_URL**
- - Redis KV database REST API URL
-- **KV_REST_API_TOKEN**
- - Redis KV API Token
-- **FREE_CHAT_ID**
- - Video ID of the free chat/waiting room. The thumbnail from this scheduled waiting room is used as the schedule page PNG
-- **CHANNEL_ID**
- - YouTube Channel ID of the tracked channel
-- **API_KEY**
- - Holodex API Key
-- **MANUAL_OVERRIDE**
- - In case Holodex misreports a video as a stream, this can be used to ignore a particular video (insert video ID)
-
-# Site Config
-The configuration for the frontend can be found within `site-config.json`
-
-- **soundUrls**
- - List of soundbites that will play when the button is clicked
-- **rareSoundUrls**
- - An extended list of soundUrls but these will only play 10% of the time
-- *pastImages*
- - A list of images that are cycled through on the landing page
-- *buttonIcon*
- - Icon that appears in the background when the button is clicked (img)
-
-The project itself is reliant on Holodex API for data and Redis KV for storing information regarding the button's global click count
-
-
-![](https://github.com/pinapelz/pinapelz/assets/21994085/cc0f1230-76a4-416c-8aa7-eb88172679b4)
diff --git a/Writerside/topics/Patchwork-API.md b/Writerside/topics/Patchwork-API.md
deleted file mode 100644
index 165c7db..0000000
--- a/Writerside/topics/Patchwork-API.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Patchwork Archive API
-API data from Patchwork Archive is public and **no API key** is required to access what is publicly available on the frontend.
-
-Below is an offering of what endpoints are available publicly.
-If you are for whatever reason hosting an instance of **Patchwork-Backend** please refer to the **README** in the repository for worker and queuer API endpoints
-<api-doc openapi-path="../api-docs/patchwork-archive-api.yml" />
-
diff --git a/Writerside/topics/Patchwork-Archive.md b/Writerside/topics/Patchwork-Archive.md
deleted file mode 100644
index 22c0ebb..0000000
--- a/Writerside/topics/Patchwork-Archive.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Patchwork Archive
-
-Patchwork Archive is a project that centers around the preservation and archival of music created by virtual youtubers.
-
-Worker scripts are ran which download and store videos identified as music, which are then hosted at *[patchwork.moekyun.me](https://patchwork.moekyun.me)*
-
-In this section you'll find various information about Patchwork Archive as well as the documentation for how to call the publicly available API.
-
-![Patchwork Archive Video Page](https://github.com/Patchwork-Archive/Patchwork-Browser/assets/21994085/30b2cabf-07b4-4331-8ebf-709520d42baa)
diff --git a/Writerside/topics/VTuber-Captcha.md b/Writerside/topics/VTuber-Captcha.md
deleted file mode 100644
index 3129f1c..0000000
--- a/Writerside/topics/VTuber-Captcha.md
+++ /dev/null
@@ -1,152 +0,0 @@
-# VTuber Captcha
-
-A simple web API that serves VTuber related CAPTCHAs including server-side verification.
-Bring your own frontend to display the data.
-
-# Available Endpoints
-The base URL or the API currently is: `https://vtuber-captcha.vercel.app/api`
-
-Below are the current API endpoints supported:
-[Authenticating Against the API](https://github.com/pinapelz/vtuber-captcha/wiki/Authenticating-Answers-Against-the-API)
-
-## `/affiliation/<org>`
-Returns a captcha asking user to identify which of the VTubers are affiliated with a particular organization or group
-
-**Path Parameters**
-- `<org>`: Refer to [organization page](https://github.com/pinapelz/vtuber-captcha/wiki/Supported-Terms#organizations) for a list of supported terms
- **Query Parameters**
-- `server_auth`: false if answers to captcha should be sent to response, true if you would like the API to store the answer and authenticate against it.
- - Default: `false`
- - Enums: `true, false`
-
-
-
-# Authenticating Answers Against The Server
-The API supports server-side verification meaning that the answer to the CAPTCHA is never sent to you after making the initial request.
-
-Instead, each request will be assigned a session-token which uniquely identifies the CAPTCHA. The server then saves the answer to the CAPTCHA.
-This makes it safe for you to directly call the API client-side from a frontend without the need for a middle-man to store the answer.
-
-To authenticate answers against the API. You need to specify the query parameter `?server_auth=true`
-
-**Example Response with `?server_auth=true`**
-```
-{
- "category": "affiliation",
- "onFail": {
- "extra": null,
- "text": "You got some wrong"
- },
- "questions": [
- {
- "id": "UCgZuwn-O7Szh9cAgHqJ6vjw",
- "image": "https://yt3.ggpht.com/ytc/AMLnZu_aQ3akSpFc9SVPcFMXATjdKZAcmy1aXtGq364A=s800-c-k-c0x00ffffff-no-rj",
- "name": "Aloe Ch.魔乃アロエ"
- },
- {
- "id": "UC7MMNHR-kf9EN1rXiesMTMw",
- "image": "https://yt3.ggpht.com/8SFoIMf_6XTf0jyeLd6Txdl96BqSyGhb250P3qEh7E4ui8fLNxLXLiLf7phYVy0CIYx3as42=s800-c-k-c0x00ffffff-no-rj",
- "name": "Magni Dezmond Ch. HOLOSTARS-EN"
- },
- {
- "id": "UCwL7dgTxKo8Y4RFIKWaf8gA",
- "image": "https://yt3.ggpht.com/ytc/AOPolaStFlTJ6ISi2Wuwz7L_OLHHShXfoVPDDnqsPWLb=s800-c-k-c0x00ffffff-no-rj",
- "name": "Oga Ch.荒咬オウガ"
- },
- {
- "id": "UCdn5BQ06XqgXoAxIhbqw5Rg",
- "image": "https://yt3.ggpht.com/ytc/AOPolaSFPK_6xlqthNXIpMC7OTWfGsDAoNkR9OexBYxcpA=s800-c-k-c0x00ffffff-no-rj",
- "name": "フブキCh。白上フブキ"
- },
- {
- "id": "UCa9Y57gfeY0Zro_noHRVrnw",
- "image": "https://yt3.ggpht.com/O7m_5HMY_O8yxR3Jhn9cEO1fLNL_GifMERExnAmfY7JrdTRsTjNijTcNYTPN97Llj3zGn8Susw=s800-c-k-c0x00ffffff-no-rj",
- "name": "Luna Ch. 姫森ルーナ"
- },
- {
- "id": "UC1CfXB_kRs3C-zaeTG3oGyg",
- "image": "https://yt3.ggpht.com/B2tq3IQAFxUe9W3MaMc0V62bmlTWCSoTuCk-Y-Ab8yXkZKdIswQhHABZhz2e4YM1-B_Kxen_7w=s800-c-k-c0x00ffffff-no-rj",
- "name": "HAACHAMA Ch 赤井はあと"
- },
- {
- "id": "UCw1KNjVqfrJSfcFd6zlcSzA",
- "image": "https://yt3.ggpht.com/7QQ7vnkdwS7e8cLY6YYRoLTLftUxQCopsIxE7L9Qd6vXW_TsCjb4YZDVqYTJ3qceAAqWtwQH=s800-c-k-c0x00ffffff-no-rj",
- "name": "Nia Suzune / 鈴音にあ [PRISM Project]"
- },
- {
- "id": "UCambvP8yxNDot4FzQc9cgiw",
- "image": "https://yt3.ggpht.com/EgL9iOOKL7KiLIBxjqJO6gmVJE7BJ4xqfmgyis_QQ9zdbYAD_Pco7xagjdpWCTFoPbgxEXyJ=s800-c-k-c0x00ffffff-no-rj",
- "name": "宇佐美リト / Usami Rito【にじさんじ】"
- },
- {
- "id": "UCqEp6RdtsMbUNrCdCswr6pA",
- "image": "https://yt3.ggpht.com/ytc/AMLnZu9ZF7fPn4IghqjrWH-SFrdSzlY9EMtkkoUntGLWLA=s800-c-k-c0x00ffffff-no-rj",
- "name": "海夜叉神/黄泉波咲夜【にじさんじ】"
- },
- {
- "id": "UC6TfqY40Xt1Y0J-N18c85qQ",
- "image": "https://yt3.ggpht.com/50JCdIpi9B-ZxDaveVfSyKuvRyj8d2DgLe0sMkd_UxuxN-VcGQ54W4M-6T0wXzJV2TdfAeZglSc=s800-c-k-c0x00ffffff-no-rj",
- "name": "安土桃"
- },
- {
- "id": "UCFTLzh12_nrtzqBPsTCqenA",
- "image": "https://yt3.ggpht.com/ytc/AOPolaRF12upNUVmDXfH2A7ViS-gyKCcAvAQXTyEmbWAcA=s800-c-k-c0x00ffffff-no-rj",
- "name": "アキロゼCh。Vtuber/ホロライブ所属"
- },
- {
- "id": "UCMwGHR0BTZuLsmjY_NT5Pwg",
- "image": "https://yt3.ggpht.com/f4uYWHJxiGwyXm8NUlm818N1MRnywtgL6wM8JdWqWsKBzI7v1eg8dxDWG7igkWuukUSiufydqPg=s800-c-k-c0x00ffffff-no-rj",
- "name": "Ninomae Ina'nis Ch. hololive-EN"
- },
- {
- "id": "UC6oW4FXETgEGOFTxWmI2h5Q",
- "image": "https://yt3.ggpht.com/ytc/AMLnZu_clEsYJi5qCPCpxCuw2qMwB5rfcm2hgDITVRRn=s800-c-k-c0x00ffffff-no-rj",
- "name": "Noor【NIJISANJI IN】"
- },
- {
- "id": "UC_sFNM0z0MWm9A6WlKPuMMg",
- "image": "https://yt3.ggpht.com/JDCIBWj11TgjY2Uyba_efZ0n5hzjysMB9GxkvHGkIN_sfFQJR5mx3iVPqgJ96IPcYjZpCLsb=s800-c-k-c0x00ffffff-no-rj",
- "name": "Nerissa Ravencroft Ch. hololive-EN"
- },
- {
- "id": "UCnYhIk9aGEx_bIgheVjs53w",
- "image": "https://yt3.ggpht.com/ytc/AOPolaRL4Pk2cC2Q0GXLV-N9tSPZkCDp_c2RqdQEBpY-=s800-c-k-c0x00ffffff-no-rj",
- "name": "Luto Araka / 新火ると [PRISM Project]"
- },
- {
- "id": "UCIytNcoz4pWzXfLda0DoULQ",
- "image": "https://yt3.ggpht.com/21x1Ab6pEffGItAcNTjcYUkG3IzQ1y--5cUUjtEhrUEuz2iCttL08vswnPRe1XvtBaZ0yUAm=s800-c-k-c0x00ffffff-no-rj",
- "name": "エクス・アルビオ -Ex Albio-"
- }
- ],
- "session": "GUQkquh03dwF84EAxif_EA",
- "title": "Select all the VTuber affiliated with Hololive"
-}
-```
-
-To check your answers against the API. Send `session` token and the `id` of each selected element as a string comma separated as part of a data payload to `/api/verify`
-
-Example Payload
-```
-session: "j4WjkoMcPgNX8_gnNXf8HA"
-answer: "UC0ZTVxCHkZanT5dnP2FZD4Q,UC4WvIIAo89_AzGUh1AZ6Dkg,UCe0JiGnjPfEwEIbWASbOimw"
-```
-Response:
-```
-{
- success: false
-}
-```
-In the case above the user selected:
-- UC0ZTVxCHkZanT5dnP2FZD4Q
-- UC4WvIIAo89_AzGUh1AZ6Dkg
-- UCe0JiGnjPfEwEIbWASbOimw
-
-and their answer was incorrect.
-
-After failing a captcha, the token becomes invalidated and a request for a new CAPTCHA must be made
-
-# Supported Keywords
-## Organization
-- Hololive: All hololive Production affiliated members, including Holostars
-- Nijisanji: All Nijisanji affiliated livers, including EN branches (does not include VirtuaReal) \ No newline at end of file
diff --git a/Writerside/topics/Welcome.md b/Writerside/topics/Welcome.md
deleted file mode 100644
index df9139a..0000000
--- a/Writerside/topics/Welcome.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# Welcome
-
-Welcome to a collection of documentation for some of the various things I have over on GitHub.
-
-These docs should serve
-as both a guide and archive of previously of both currently active and previously projects. \ No newline at end of file
diff --git a/Writerside/v.list b/Writerside/v.list
deleted file mode 100644
index 2d12cb3..0000000
--- a/Writerside/v.list
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE vars SYSTEM "https://resources.jetbrains.com/writerside/1.0/vars.dtd">
-<vars>
- <var name="product" value="Writerside"/>
-</vars>
diff --git a/Writerside/writerside.cfg b/Writerside/writerside.cfg
deleted file mode 100644
index 5f10ad4..0000000
--- a/Writerside/writerside.cfg
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE ihp SYSTEM "https://resources.jetbrains.com/writerside/1.0/ihp.dtd">
-
-<ihp version="2.0">
- <topics dir="topics" web-path="topics"/>
- <images dir="images" web-path="images"/>
- <categories src="c.list"/>
- <vars src="v.list"/>
- <instance src="hi.tree"/>
-</ihp> \ No newline at end of file
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage