diff --git a/examples.tsv b/.github/archive_examples.tsv
similarity index 99%
rename from examples.tsv
rename to .github/archive_examples.tsv
index fbea3c9..ded60cc 100644
--- a/examples.tsv
+++ b/.github/archive_examples.tsv
@@ -1,21 +1,21 @@
-name channel link
-Maggie's Purple 1137102371172917380 https://raw.githubusercontent.com/maggster165/vendettathemes/main/maggiespurple.json
-Nord 1135824724212076644 https://raw.githubusercontent.com/vorlie/VendettaThemes/main/Nord/nord.json
-Purpdarkv3 1135824892575613019 https://raw.githubusercontent.com/vorlie/VendettaThemes/main/Purpdark/PurpDark_BG/Purpdark_v3.json
-SeaGreen 1135825053968252969 https://raw.githubusercontent.com/vorlie/VendettaThemes/main/SeaGreen/SeaGreen.json
-MediumSlateBlue 1135825255445823528 https://raw.githubusercontent.com/vorlie/VendettaThemes/main/MediumSlateBlue/MediumSlateBlue.json
-RedFeathers 1135825435972870186 https://raw.githubusercontent.com/vorlie/VendettaThemes/main/MediumSlateBlue/MediumSlateBlue.json
-Vision Pro 1137781580857872475 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/Vision%20pro%202.0.json
-Midnight-Espresso 1138099451026747402/1138099451026747402 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/MidnightEspresso%20Plus.json
-Lavender Heaven 1138099451026747402/1138099646720393307 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/LavenderHeaven%20Plus.json
-Katana 1138099451026747402/1138099827411001394 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/Katana%20Plus.json
-Purple Galaxy 1138099451026747402/1138100188070805575 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/PurpleGalaxy%20Plus.json
-Emerald Peppermint 1138099451026747402/1138100356962865212 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/EmeraldPeppermint%20Plus.json
-Pebble 1138099451026747402/1138100645921034240 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/EmeraldPeppermint%20Plus.json
-Purple Kitty 1138099451026747402/1138101958645911573 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/PurpleKitty%20Plus.json
-Midnight 1138416851815239791 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/Midnight%20Plus.json
-CityFog 1138877237857353758 https://raw.githubusercontent.com/Quinxxxx/Discord/main/Vendetta/CityFog.json
-Catty 1140193359256887336 https://raw.githubusercontent.com/ArisonID/aris-silly-themes/main/Catty.json
-ClearVision 1140264173457133669 https://raw.githubusercontent.com/TakiShiwa/Themes/main/ClearVision/Vendetta/ClearVision.json
-MintY Green 1140677087636758559 https://raw.githubusercontent.com/Panniku/VendettaThemes/main/minty-green.json
+name channel link
+Maggie's Purple 1137102371172917380 https://raw.githubusercontent.com/maggster165/vendettathemes/main/maggiespurple.json
+Nord 1135824724212076644 https://raw.githubusercontent.com/vorlie/VendettaThemes/main/Nord/nord.json
+Purpdarkv3 1135824892575613019 https://raw.githubusercontent.com/vorlie/VendettaThemes/main/Purpdark/PurpDark_BG/Purpdark_v3.json
+SeaGreen 1135825053968252969 https://raw.githubusercontent.com/vorlie/VendettaThemes/main/SeaGreen/SeaGreen.json
+MediumSlateBlue 1135825255445823528 https://raw.githubusercontent.com/vorlie/VendettaThemes/main/MediumSlateBlue/MediumSlateBlue.json
+RedFeathers 1135825435972870186 https://raw.githubusercontent.com/vorlie/VendettaThemes/main/MediumSlateBlue/MediumSlateBlue.json
+Vision Pro 1137781580857872475 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/Vision%20pro%202.0.json
+Midnight-Espresso 1138099451026747402/1138099451026747402 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/MidnightEspresso%20Plus.json
+Lavender Heaven 1138099451026747402/1138099646720393307 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/LavenderHeaven%20Plus.json
+Katana 1138099451026747402/1138099827411001394 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/Katana%20Plus.json
+Purple Galaxy 1138099451026747402/1138100188070805575 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/PurpleGalaxy%20Plus.json
+Emerald Peppermint 1138099451026747402/1138100356962865212 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/EmeraldPeppermint%20Plus.json
+Pebble 1138099451026747402/1138100645921034240 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/EmeraldPeppermint%20Plus.json
+Purple Kitty 1138099451026747402/1138101958645911573 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/PurpleKitty%20Plus.json
+Midnight 1138416851815239791 https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/Midnight%20Plus.json
+CityFog 1138877237857353758 https://raw.githubusercontent.com/Quinxxxx/Discord/main/Vendetta/CityFog.json
+Catty 1140193359256887336 https://raw.githubusercontent.com/ArisonID/aris-silly-themes/main/Catty.json
+ClearVision 1140264173457133669 https://raw.githubusercontent.com/TakiShiwa/Themes/main/ClearVision/Vendetta/ClearVision.json
+MintY Green 1140677087636758559 https://raw.githubusercontent.com/Panniku/VendettaThemes/main/minty-green.json
Nord - in light mode 1140743874747310120 https://raw.githubusercontent.com/Quinxxxx/Discord-themes/main/Vendetta/Nord/light_nord.json
\ No newline at end of file
diff --git a/.github/scripts/example_writer/index.mjs b/.github/scripts/example_writer/index.mjs
deleted file mode 100644
index 7c6c36b..0000000
--- a/.github/scripts/example_writer/index.mjs
+++ /dev/null
@@ -1,48 +0,0 @@
-import { readFile, writeFile } from "fs/promises";
-import { format } from "prettier";
-import { join } from "path";
-
-console.time("Done");
-
-const times = {
- until: null,
- after: null,
-};
-
-const lines = (await readFile(join("../../", "README.md"), "utf8")).split("\n");
-
-for (let i = 0; i < lines.length; i++) {
- const l = lines[i];
- if (l.startsWith("## Examples")) times.until = i + 1;
- else if (times.until && !times.after && l.startsWith("## ")) times.after = i;
-}
-
-if (!times.until || !times.after)
- throw new Error("times.until or times.after missing");
-
-const data = (await readFile(join("../../examples.tsv"), "utf8"))
- .replace(/\r/g, "")
- .split("\n")
- .slice(1)
- .map((x) => x.split("\t"))
- .map((x) => ({
- name: x[0],
- channel: x[1],
- link: x[2],
- }));
-
-await writeFile(
- join("../../README.md"),
- [
- lines.slice(0, times.until).join("\n"),
- data
- .map(
- (x) =>
- `- [${x.name}](https://discord.com/channels/1015931589865246730/${x.channel}) — [\\[copy theme link\\]](${x.link})`
- )
- .join("\n"),
- lines.slice(times.after).join("\n"),
- ].join("\n\n")
-);
-
-console.timeEnd("Done");
diff --git a/.github/scripts/iconpacks_tree_writer/index.mjs b/.github/scripts/iconpack_tree_writer/index.mjs
similarity index 55%
rename from .github/scripts/iconpacks_tree_writer/index.mjs
rename to .github/scripts/iconpack_tree_writer/index.mjs
index cafa2bb..483c1ca 100644
--- a/.github/scripts/iconpacks_tree_writer/index.mjs
+++ b/.github/scripts/iconpack_tree_writer/index.mjs
@@ -1,56 +1,43 @@
-import { readFile, readdir, unlink, writeFile } from "fs/promises";
-import { join } from "path";
-
-console.time("Done");
-
-const repo = process.env.github_repository ?? "nexpid/VendettaThemesPlus";
-
-const { list } = JSON.parse(
- await readFile(join("../../", "iconpacks", "list.json"), "utf8"),
-);
-
-for (const ic of list) {
- console.log(`Parsing tree for '${ic.id}'`);
-
- const load = ic.load && (!ic.load.endsWith("/") ? ic.load + "/" : ic.load);
-
- let user, path;
- if (load) {
- const split = load.split("/");
- user = split.slice(3, 5).join("/");
- path = split.slice(6, -1);
- } else {
- user = repo;
- path = ["assets", ic.id];
- }
-
- try {
- const paths = (
- await (
- await fetch(
- `https://api.github.com/repos/${user}/git/trees/master?recursive=1`,
- )
- ).json()
- ).tree
- .filter((x) => x.path.startsWith(path.join("/")))
- .map((x) => x.path.split("/").slice(path.length).join("/"))
- .filter((x) => x.length > 0);
-
- await writeFile(
- join("../../../", "trees", `${ic.id}.txt`),
- paths.join("\n"),
- );
- } catch (e) {
- console.log(`Failed to parse tree for '${ic.id}'!`);
- continue;
- }
-}
-
-for (const f of (
- await readdir(join("../../../", "trees"), {
- withFileTypes: true,
- })
-).filter((x) => x.isFile() && !list.some((y) => x.name === `${y.id}.txt`)))
- await unlink(join("../../../", "trees", f.name));
-
-console.timeEnd("Done");
+import { readFile, readdir, unlink, writeFile } from "fs/promises";
+import { join } from "path";
+
+console.time("Done");
+
+const { list } = JSON.parse(
+ await readFile(join("iconpacks", "list.json"), "utf8")
+);
+
+for (const ic of list) {
+ console.log(`Parsing tree for '${ic.id}'`);
+
+ const split = ic.load.split("/");
+ const user = split.slice(3, 5).join("/");
+ const path = split.slice(6, -1);
+
+ try {
+ const paths = (
+ await (
+ await fetch(
+ `https://api.github.com/repos/${user}/git/trees/master?recursive=1`
+ )
+ ).json()
+ ).tree
+ .filter((x) => x.path.startsWith(path.join("/")))
+ .map((x) => x.path.split("/").slice(path.length).join("/"))
+ .filter((x) => x.length > 0);
+
+ await writeFile(join("../", "trees", `${ic.id}.txt`), paths.join("\n"));
+ } catch (e) {
+ console.log(`Failed to parse tree for '${ic.id}'!`);
+ continue;
+ }
+}
+
+for (const f of (
+ await readdir("../trees", {
+ withFileTypes: true,
+ })
+).filter((x) => x.isFile() && !list.some((y) => x.name === `${y.id}.txt`)))
+ await unlink(join("../trees", f.name));
+
+console.timeEnd("Done");
diff --git a/.github/scripts/iconpacks_readme/index.mjs b/.github/scripts/iconpacks_readme/index.mjs
deleted file mode 100644
index 11a4535..0000000
--- a/.github/scripts/iconpacks_readme/index.mjs
+++ /dev/null
@@ -1,74 +0,0 @@
-import { readFile, writeFile } from "fs/promises";
-import { format } from "prettier";
-import { join } from "path";
-
-console.time("Done");
-
-const template = await readFile(
- join("iconpacks_readme", "template.md"),
- "utf8"
-);
-const { list } = JSON.parse(
- await readFile(join("../../", "iconpacks", "list.json"), "utf8")
-);
-
-const columns = 2;
-const rows = [];
-
-const parseAuthor = (x) => {
- const splat = x.split(" <");
- if (splat[1]) return [splat[0], splat[1].slice(0, -1)];
- else return [splat[0]];
-};
-
-for (let i = 0; i < list.length; i += columns) {
- const packs = list.slice(i, i + columns);
- rows.push(
- `
${packs
- .map(
- (pack) =>
- `${[
- ["Name", pack.id],
- ["Description", pack.description],
- [
- "Authors",
- pack.credits.authors
- .map((a) => {
- const [name, discord] = parseAuthor(a);
- return discord
- ? `${name}`
- : name;
- })
- .join(", "),
- ],
- ]
- .map(([key, val]) => `${key}: ${val}`)
- .join(
- "\n \n"
- )}\n\n\nDeveloper Stuff\n\n${[
- ["Root URL", pack.load],
- ["Icon Suffix", pack.suffix],
- ]
- .map(([key, val]) => `${key}: ${val}`)
- .join("\n \n")}\n | `
- )
- .join("\n")}
`
- );
-}
-
-await writeFile(
- join("../../../", "wiki", "Iconpacks.md"),
- await format(
- template.replace(
- /{{}}/g,
- await format(``, {
- parser: "html",
- })
- ),
- {
- parser: "markdown",
- }
- )
-);
-
-console.timeEnd("Done");
diff --git a/.github/scripts/iconpacks_readme/template.md b/.github/scripts/iconpacks_readme/template.md
deleted file mode 100644
index 0cf632e..0000000
--- a/.github/scripts/iconpacks_readme/template.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Icon Packs
-
-Icon packs change all the icons to a different set.
-You can suggest an icon pack by [creating an issue](https://github.com/nexpid/VendettaThemesPlus/issues/new/choose), or if you have the iconpack assets, [create a pull request](https://github.com/nexpid/VendettaThemesPlus/compare)
-Here's a list of all available icon packs:
-
-{{}}
diff --git a/.github/scripts/list_iconpacks/index.mjs b/.github/scripts/list_iconpacks/index.mjs
new file mode 100644
index 0000000..1c46b88
--- /dev/null
+++ b/.github/scripts/list_iconpacks/index.mjs
@@ -0,0 +1,44 @@
+import { readFile, writeFile } from "fs/promises";
+import { format } from "prettier";
+import { join } from "path";
+
+console.time("Done");
+
+const template = await readFile(
+ join(".github/scripts/list_iconpacks", "template.md"),
+ "utf8"
+);
+const { list } = JSON.parse(
+ await readFile(join("iconpacks", "list.json"), "utf8")
+);
+
+const packs = [];
+for (const pack of list) {
+ const authors = pack.credits.authors.map((a) =>
+ a.id ? `[@${a.name}](https://discord.com/users/${a.id})` : a.name
+ );
+
+ packs.push(
+ [
+ `### ${pack.name} `,
+ `${pack.description} `,
+ `Created by: ${
+ authors.length > 1
+ ? `${authors.slice(0, -1).join(", ")} and ${
+ authors[authors.length - 1]
+ }`
+ : authors.join(", ")
+ } `,
+ `Assets from: [${pack.credits.source}](${pack.credits.source}) `,
+ ].join("\n")
+ );
+}
+
+await writeFile(
+ join("docs", "ICONPACKS.md"),
+ await format(template.replace(/{{}}/g, packs.join("\n\n")), {
+ parser: "markdown",
+ })
+);
+
+console.timeEnd("Done");
diff --git a/.github/scripts/list_iconpacks/template.md b/.github/scripts/list_iconpacks/template.md
new file mode 100644
index 0000000..059b6ad
--- /dev/null
+++ b/.github/scripts/list_iconpacks/template.md
@@ -0,0 +1,8 @@
+# Iconpacks
+
+Iconpacks change Discord's boring icons to something more fun and exciting.
+If you want to create your own iconpack, check out my [Themelings](https://github.com/nexpid/Themelings/tree/data) repo, which tracks Discord's icons and hosts them on GitHub. Just download the icons folder, modify the icons and you're done!
+
+## List of iconpacks
+
+{{}}
diff --git a/.github/scripts/package.json b/.github/scripts/package.json
index 0fe81d8..a866b66 100644
--- a/.github/scripts/package.json
+++ b/.github/scripts/package.json
@@ -1,7 +1,8 @@
-{
- "name": "scripts",
- "private": true,
- "dependencies": {
- "prettier": "^3.0.1"
- }
-}
+{
+ "name": "scripts",
+ "private": true,
+ "dependencies": {
+ "prettier": "^3.0.1"
+ },
+ "packageManager": "pnpm@9.0.6"
+}
diff --git a/.github/scripts/pnpm-lock.yaml b/.github/scripts/pnpm-lock.yaml
index 8a62fc9..10dba92 100644
--- a/.github/scripts/pnpm-lock.yaml
+++ b/.github/scripts/pnpm-lock.yaml
@@ -1,18 +1,24 @@
-lockfileVersion: '6.0'
+lockfileVersion: '9.0'
settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
-dependencies:
- prettier:
- specifier: ^3.0.1
- version: 3.0.1
+importers:
+
+ .:
+ dependencies:
+ prettier:
+ specifier: ^3.0.1
+ version: 3.0.1
packages:
- /prettier@3.0.1:
+ prettier@3.0.1:
resolution: {integrity: sha512-fcOWSnnpCrovBsmFZIGIy9UqK2FaI7Hqax+DIO0A9UxeVoY4iweyaFjS5TavZN97Hfehph0nhsZnjlVKzEQSrQ==}
engines: {node: '>=14'}
hasBin: true
- dev: false
+
+snapshots:
+
+ prettier@3.0.1: {}
diff --git a/.github/workflows/example-writer.yml b/.github/workflows/example-writer.yml
deleted file mode 100644
index b727c71..0000000
--- a/.github/workflows/example-writer.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-name: Example Writer
-
-on:
- push:
- branches:
- - main
- paths:
- - "examples.tsv"
- - ".github/scripts/example_writer/**/*.*"
- - ".github/workflows/example-writer.yml"
- workflow_dispatch:
-
-concurrency:
- group: ${{ github.ref }}
-
-jobs:
- write:
- runs-on: ubuntu-latest
- name: Write Examples
- permissions:
- contents: write
- steps:
- - uses: actions/checkout@v4
-
- - uses: actions/setup-node@v3
- with:
- node-version: 18.x
-
- - name: Install PNPM
- run: |
- npm i -g pnpm
- cd .github/scripts
- pnpm i
-
- - name: Write Examples
- working-directory: .github/scripts
- run: node example_writer/index.mjs
-
- - name: Commit changes
- run: |
- git config --global user.name "github-actions[bot]"
- git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
-
- git add README.md
- git commit -m "chore: update README examples (${{ github.sha || 'ran manually' }})" | true
- git pull
- git push
diff --git a/.github/workflows/iconpacks-tree-writer.yml b/.github/workflows/iconpack_tree_writer.yml
similarity index 64%
rename from .github/workflows/iconpacks-tree-writer.yml
rename to .github/workflows/iconpack_tree_writer.yml
index c4f17bf..a9f2006 100644
--- a/.github/workflows/iconpacks-tree-writer.yml
+++ b/.github/workflows/iconpack_tree_writer.yml
@@ -1,59 +1,56 @@
-name: Iconpacks Tree Writer
-
-on:
- push:
- branches:
- - main
- paths:
- - "iconpacks/list.json"
- - ".github/workflows/iconpacks-tree-writer.yml"
- schedule:
- - cron: "*/30 * * * *"
- workflow_dispatch:
-
-concurrency:
- group: ${{ github.ref }}
-
-jobs:
- write:
- runs-on: ubuntu-latest
- name: Write Trees
- permissions:
- contents: write
- steps:
- - uses: actions/checkout@v4
- with:
- path: main
-
- - uses: actions/checkout@v4
- with:
- ref: iconpack-trees
- path: trees
-
- - uses: actions/setup-node@v3
- with:
- node-version: 18.x
-
- - name: Install PNPM
- working-directory: main
- run: |
- npm i -g pnpm
- cd .github/scripts
- pnpm i
-
- - name: Write Trees
- working-directory: main/.github/scripts
- run: node iconpacks_tree_writer/index.mjs
- env:
- github_repository: ${{ github.repository }}
-
- - name: Commit changes
- working-directory: trees
- run: |
- git config --global user.name "github-actions[bot]"
- git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
-
- git add .
- git commit -m "chore: update iconpacks trees" | true
- git pull
- git push
+name: Iconpack Tree Writer
+
+on:
+ push:
+ branches:
+ - main
+ paths:
+ - "iconpacks/list.json"
+ - ".github/scripts/iconpack_tree_writer/**/*.*"
+ - ".github/workflows/iconpack_tree_writer.yml"
+ schedule:
+ - cron: "*/30 * * * *"
+ workflow_dispatch:
+
+concurrency:
+ group: ${{ github.ref }}
+
+jobs:
+ write:
+ runs-on: ubuntu-latest
+ name: Write Trees
+ permissions:
+ contents: write
+ steps:
+ - uses: actions/checkout@v4
+ with:
+ path: main
+
+ - uses: actions/checkout@v4
+ with:
+ ref: iconpack-trees
+ path: trees
+
+ - uses: actions/setup-node@v3
+ with:
+ node-version: 18.x
+
+ - uses: pnpm/action-setup@v3
+
+ - working-directory: .github/scripts
+ run: pnpm i
+
+ - name: Write trees
+ working-directory: main
+ run: node .github/scripts/iconpack_tree_writer/index.mjs
+
+ - name: Commit changes
+ working-directory: trees
+ run: |
+ git config --global user.name "github-actions[bot]"
+ git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
+
+ git add .
+ git commit -m "chore: update iconpacks trees (${{ github.sha || github.event_name }})" | true
+ git pull
+ git push
diff --git a/.github/workflows/iconpacks-readme.yml b/.github/workflows/list_iconpacks.yml
similarity index 51%
rename from .github/workflows/iconpacks-readme.yml
rename to .github/workflows/list_iconpacks.yml
index e9e46f8..3f63d7a 100644
--- a/.github/workflows/iconpacks-readme.yml
+++ b/.github/workflows/list_iconpacks.yml
@@ -1,56 +1,45 @@
-name: Iconpack Readme Writer
-
-on:
- push:
- branches:
- - main
- paths:
- - "iconpacks/list.json"
- - ".github/scripts/iconpacks_readme/**/*.*"
- - ".github/workflows/iconpacks-readme.yml"
- workflow_dispatch:
-
-concurrency:
- group: ${{ github.ref }}
-
-jobs:
- write:
- runs-on: ubuntu-latest
- name: Write Readme
- permissions:
- contents: write
- steps:
- - uses: actions/checkout@v4
- with:
- path: base
-
- - uses: actions/checkout@v4
- with:
- repository: ${{ github.repository }}.wiki
- path: wiki
-
- - uses: actions/setup-node@v3
- with:
- node-version: 18.x
-
- - name: Install PNPM
- working-directory: base
- run: |
- npm i -g pnpm
- cd .github/scripts
- pnpm i
-
- - name: Write README
- working-directory: base/.github/scripts
- run: node iconpacks_readme/index.mjs
-
- - name: Commit changes
- working-directory: wiki
- run: |
- git config --global user.name "github-actions[bot]"
- git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
-
- git add Iconpacks.md
- git commit -m "chore: update iconpacks (${{ github.sha || 'ran manually' }})" | true
- git pull
- git push
+name: List Iconpacks
+
+on:
+ push:
+ branches:
+ - main
+ paths:
+ - "iconpacks/list.json"
+ - ".github/scripts/list_iconpacks/**/*.*"
+ - ".github/workflows/list_iconpacks.yml"
+ workflow_dispatch:
+
+concurrency:
+ group: ${{ github.ref }}
+
+jobs:
+ write:
+ runs-on: ubuntu-latest
+ name: Write Readme
+ permissions:
+ contents: write
+ steps:
+ - uses: actions/checkout@v4
+
+ - uses: actions/setup-node@v3
+ with:
+ node-version: 18.x
+
+ - uses: pnpm/action-setup@v3
+
+ - working-directory: .github/scripts
+ run: pnpm i
+
+ - name: Write ICONPACKS.md
+ run: node .github/scripts/list_iconpacks/index.mjs
+
+ - name: Commit changes
+ run: |
+ git config --global user.name "github-actions[bot]"
+ git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
+
+ git add docs/ICONPACKS.md
+ git commit -m "chore: update iconpacks (${{ github.sha || github.event_name }})" | true
+ git pull
+ git push
diff --git a/README.md b/README.md
index fab3513..8367cbe 100644
--- a/README.md
+++ b/README.md
@@ -1,81 +1,32 @@
-
-
-
🎨 Vendetta Themes+
-
-
-## Table of Contents
-
-- [Vendetta Themes+](#-vendetta-themes)
- - [Table of Contents](#table-of-contents)
- - [Info](#info)
- - [FAQ](#faq)
- - [Links](#links)
- - [Examples](#examples)
- - [Documentation](#documentation)
-
-## Info
-
-Vendetta Themes+ is a plugin that adds more customizability to themes, such as:
-
-- recoloring icons (completely, unread badges, seperate layers)
-- changing the mention line color
-- custom icon packs
-- ... and more coming soon!
-
-It's recommended to include this message (or something similiar to it) wherever you're promoting your theme:
-
-```
-This theme has Themes+ support, install it here: <#12345>
-```
-
-## FAQ
-
-- Q: The plugin isn't doing anything?
- - A: The plugin requires a theme with Themes+ support to do anything, check the [examples](#examples) section
-
-## Links
-
-- [This repository](https://github.com/nexpid/VendettaThemesPlus)
-- Plugins channel link (doesn't exist yet)
-- [Plugin link](https://vendetta.nexpid.xyz/themes-plus)
-- [Plugin source code](https://github.com/nexpid/VendettaPlugins/tree/main/plugins/themes-plus)
-
-## Examples
-
-- [Maggie's Purple](https://discord.com/channels/1015931589865246730/1137102371172917380) — [\[copy theme link\]](https://raw.githubusercontent.com/maggster165/vendettathemes/main/maggiespurple.json)
-- [Nord](https://discord.com/channels/1015931589865246730/1135824724212076644) — [\[copy theme link\]](https://raw.githubusercontent.com/vorlie/VendettaThemes/main/Nord/nord.json)
-- [Purpdarkv3](https://discord.com/channels/1015931589865246730/1135824892575613019) — [\[copy theme link\]](https://raw.githubusercontent.com/vorlie/VendettaThemes/main/Purpdark/PurpDark_BG/Purpdark_v3.json)
-- [SeaGreen](https://discord.com/channels/1015931589865246730/1135825053968252969) — [\[copy theme link\]](https://raw.githubusercontent.com/vorlie/VendettaThemes/main/SeaGreen/SeaGreen.json)
-- [MediumSlateBlue](https://discord.com/channels/1015931589865246730/1135825255445823528) — [\[copy theme link\]](https://raw.githubusercontent.com/vorlie/VendettaThemes/main/MediumSlateBlue/MediumSlateBlue.json)
-- [RedFeathers](https://discord.com/channels/1015931589865246730/1135825435972870186) — [\[copy theme link\]](https://raw.githubusercontent.com/vorlie/VendettaThemes/main/MediumSlateBlue/MediumSlateBlue.json)
-- [Vision Pro](https://discord.com/channels/1015931589865246730/1137781580857872475) — [\[copy theme link\]](https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/Vision%20pro%202.0.json)
-- [Midnight-Espresso](https://discord.com/channels/1015931589865246730/1138099451026747402/1138099451026747402) — [\[copy theme link\]](https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/MidnightEspresso%20Plus.json)
-- [Lavender Heaven](https://discord.com/channels/1015931589865246730/1138099451026747402/1138099646720393307) — [\[copy theme link\]](https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/LavenderHeaven%20Plus.json)
-- [Katana](https://discord.com/channels/1015931589865246730/1138099451026747402/1138099827411001394) — [\[copy theme link\]](https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/Katana%20Plus.json)
-- [Purple Galaxy](https://discord.com/channels/1015931589865246730/1138099451026747402/1138100188070805575) — [\[copy theme link\]](https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/PurpleGalaxy%20Plus.json)
-- [Emerald Peppermint](https://discord.com/channels/1015931589865246730/1138099451026747402/1138100356962865212) — [\[copy theme link\]](https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/EmeraldPeppermint%20Plus.json)
-- [Pebble](https://discord.com/channels/1015931589865246730/1138099451026747402/1138100645921034240) — [\[copy theme link\]](https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/EmeraldPeppermint%20Plus.json)
-- [Purple Kitty](https://discord.com/channels/1015931589865246730/1138099451026747402/1138101958645911573) — [\[copy theme link\]](https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/PurpleKitty%20Plus.json)
-- [Midnight](https://discord.com/channels/1015931589865246730/1138416851815239791) — [\[copy theme link\]](https://raw.githubusercontent.com/VodkaXMartini/VendettaTheme-Plus/main/Midnight%20Plus.json)
-- [CityFog](https://discord.com/channels/1015931589865246730/1138877237857353758) — [\[copy theme link\]](https://raw.githubusercontent.com/Quinxxxx/Discord/main/Vendetta/CityFog.json)
-- [Catty](https://discord.com/channels/1015931589865246730/1140193359256887336) — [\[copy theme link\]](https://raw.githubusercontent.com/ArisonID/aris-silly-themes/main/Catty.json)
-- [ClearVision](https://discord.com/channels/1015931589865246730/1140264173457133669) — [\[copy theme link\]](https://raw.githubusercontent.com/TakiShiwa/Themes/main/ClearVision/Vendetta/ClearVision.json)
-- [MintY Green](https://discord.com/channels/1015931589865246730/1140677087636758559) — [\[copy theme link\]](https://raw.githubusercontent.com/Panniku/VendettaThemes/main/minty-green.json)
-- [Nord - in light mode](https://discord.com/channels/1015931589865246730/1140743874747310120) — [\[copy theme link\]](https://raw.githubusercontent.com/Quinxxxx/Discord-themes/main/Vendetta/Nord/light_nord.json)
-
-## Documentation
-
-Documentation for Themes+ is available [here](https://github.com/nexpid/VendettaThemesPlus/wiki)
+
+
+Themes+ is a plugin for [Pyoncord](https://github.com/Pyoncord) that makes themes more customizable. It includes features such as:
+
+- recoloring icons
+- tweaking hardcoded colors
+- icon packs
+- … and much more coming soon!
+
+## Documentation
+
+Read the documentation [here](https://github.com/nexpid/ThemesPlus/tree/main/docs)
+
+## Links
+
+- [Plugin link](https://vendetta.nexpid.xyz/themes-plus)
+- [Docs](https://github.com/nexpid/ThemesPlus/tree/main/docs)
+- [Pyoncord](https://github.com/Pyoncord)
diff --git a/docs/CUSTOM-ICON-OVERLAYS.md b/docs/CUSTOM-ICON-OVERLAYS.md
new file mode 100644
index 0000000..3d63843
--- /dev/null
+++ b/docs/CUSTOM-ICON-OVERLAYS.md
@@ -0,0 +1,38 @@
+# Custom Icon Overlays
+
+Adds more layers to icons to allow futher recoloring
+
+## \_\_overlay
+
+Icons:
+
+- ic_radio_circle_checked_green
+- ic_selection_checked_24px
+- ic_radio_square_checked_24px
+- ic_radio_circle_checked
+- app_installed_check
+
+Overlay name: **IconName\_\_overlay**
+
+Example:
+
+```json
+{
+ "plus": {
+ "version": 0,
+ "icons": {
+ "app_installed_check": "#f00",
+ "app_installed_check__overlay": "#00f"
+ },
+ "customOverlays": true
+ }
+}
+```
+
+| Original | Base | Overlay | Example |
+| -------------------------------------------------------------------------- | ------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ |
+| ![original](./assets/custom-overlays/greenies/original.png) | ![base](./assets/custom-overlays/greenies/base.png) | ![overlay](./assets/custom-overlays/greenies/overlay.png) | ![example](./assets/custom-overlays/greenies/example.png) |
+| ![original](./assets/custom-overlays/ic_selection_checked/original.png) | ![base](./assets/custom-overlays/ic_selection_checked/base.png) | ![overlay](./assets/custom-overlays/ic_selection_checked/overlay.png) | ![example](./assets/custom-overlays/ic_selection_checked/example.png) |
+| ![original](./assets/custom-overlays/ic_radio_square_checked/original.png) | ![base](./assets/custom-overlays/ic_radio_square_checked/base.png) | ![overlay](./assets/custom-overlays/ic_radio_square_checked/overlay.png) | ![example](./assets/custom-overlays/ic_radio_square_checked/example.png) |
+| ![original](./assets/custom-overlays/ic_radio_circle_checked/original.png) | ![base](./assets/custom-overlays/ic_radio_circle_checked/base.png) | ![overlay](./assets/custom-overlays/ic_radio_circle_checked/overlay.png) | ![example](./assets/custom-overlays/ic_radio_circle_checked/example.png) |
+| ![original](./assets/custom-overlays/greenies/original.png) | ![base](./assets/custom-overlays/greenies/base.png) | ![overlay](./assets/custom-overlays/greenies/overlay.png) | ![example](./assets/custom-overlays/greenies/example.png) |
diff --git a/docs/ICONPACKS.md b/docs/ICONPACKS.md
new file mode 100644
index 0000000..a8d44c7
--- /dev/null
+++ b/docs/ICONPACKS.md
@@ -0,0 +1,36 @@
+# Iconpacks
+
+Iconpacks change Discord's boring icons to something more fun and exciting.
+If you want to create your own iconpack, check out my [Themelings](https://github.com/nexpid/Themelings/tree/data) repo, which tracks Discord's icons and hosts them on GitHub. Just download the icons folder, modify the icons and you're done!
+
+## List of iconpacks
+
+### Rosiecord Plumpy
+
+Probably the most liked Rosiecord iconpack, constantly updated with new icons by another Rosie :3
+Created by: [@Rosie](https://discord.com/users/581573474296791211) and [@samara](https://discord.com/users/1236648613145346203)
+Assets from: [https://icons8.com/icons/plumpy](https://icons8.com/icons/plumpy)
+
+### Rosiecord Iconsax
+
+Uses some icons from Rosiecord Plumpy, given by Flower :3, includes quite modern icons
+Created by: [@Rosie](https://discord.com/users/581573474296791211) and Flower :3
+Assets from: [https://iconsax.io/](https://iconsax.io/)
+
+### MD3
+
+Material Icons iconpack for Pyoncord
+Created by: [@panniku](https://discord.com/users/703634705152606318)
+Assets from: [https://fonts.google.com/icons/](https://fonts.google.com/icons/)
+
+### Deco
+
+An iconpack based on the Icons8 Deco collection
+Created by: [@doraa](https://discord.com/users/455513497288310785)
+Assets from: [https://icons8.com/icons/deco](https://icons8.com/icons/deco)
+
+### Solar
+
+A giant iconpack, as big as the solar system!
+Created by: [@Moodle](https://discord.com/users/807170846497570848)
+Assets from: [https://www.figma.com/community/file/1166831539721848736/](https://www.figma.com/community/file/1166831539721848736/)
diff --git a/docs/PLUS-VERSION-0.md b/docs/PLUS-VERSION-0.md
new file mode 100644
index 0000000..6c91536
--- /dev/null
+++ b/docs/PLUS-VERSION-0.md
@@ -0,0 +1,163 @@
+# Plus Version 0
+
+## Custom Icon Colors
+
+Allows you to recolor icons, or their layers if [custom icon overlays](#custom-icon-overlays) is enabled
+Structure:
+
+- `icons` — an object containing all the icon recolors
+ - key — name of an icon
+ - value — a [color](#the-color-system)
+
+Example:
+
+```json
+"plus": {
+ "version": 0,
+ "icons": {
+ "GlobeEarthIcon": [
+ "#f00",
+ "#0f0",
+ "#00f"
+ ],
+ "AppsIcon": [
+ "#0ff"
+ ],
+ "HubIcon": "#f0f"
+ }
+}
+```
+
+Would look like:
+
+| Original | Dark | Light | Midnight |
+| ------------------------------------------------------- | ----------------------------------------------- | ------------------------------------------------- | ------------------------------------------------------- |
+| ![original](./assets/icons/GlobeEarthIcon/original.png) | ![dark](./assets/icons/GlobeEarthIcon/dark.png) | ![light](./assets/icons/GlobeEarthIcon/light.png) | ![midnight](./assets/icons/GlobeEarthIcon/midnight.png) |
+| ![original](./assets/icons/AppsIcon/original.png) | ![dark](./assets/icons/AppsIcon/dark.png) | ![light](./assets/icons/AppsIcon/original.png) | ![midnight](./assets/icons/AppsIcon/dark.png) |
+| ![original](./assets/icons/HubIcon/original.png) | ![dark](./assets/icons/HubIcon/all.png) | ![light](./assets/icons/HubIcon/all.png) | ![midnight](./assets/icons/HubIcon/all.png) |
+
+## Unread Badge Color
+
+> **WARNING**
+> This is deprecated and will be removed in version 1. Use raw color `RED_400` instead
+
+Changes the color of the unread badge
+Structure:
+
+- `unreadBadgeColor` — a [color](#the-color-system)
+
+Example:
+
+```json
+"plus": {
+ "version": 0,
+ "unreadBadgeColor": "#00f"
+}
+```
+
+Would look like:
+
+| Original | Recolored |
+| ----------------------------------------------------- | ------------------------------------------------------- |
+| ![original](./assets/unread-badge-color/original.png) | ![recolored](./assets/unread-badge-color/recolored.png) |
+
+## Custom Icon Overlays
+
+> **INFO**
+> Incompatible with iconpacks
+
+Adds more layers to icons to allow futher recoloring. You can find the full list [here](./CUSTOM-ICON-OVERLAYS.md)
+Structure:
+
+- `customOverlays` — a boolean
+
+Example:
+
+```json
+"plus": {
+ "version": 0,
+ "icons": {
+ "ic_radio_square_checked_24px": ["#f00", "#f0f"],
+ "ic_radio_square_checked_24px__overlay": ["#faa", "#faf"],
+ "ic_radio_circle_checked_green": ["#aa0", "#0aa"],
+ "ic_radio_circle_checked_green__overlay": ["#ffa", "#aff"],
+ },
+ "customOverlays": true
+}
+```
+
+Would look like:
+
+| Original | Dark | Light |
+| -------------------------------------------------------------------------- | ------------------------------------------------------------------ | -------------------------------------------------------------------- |
+| ![original](./assets/custom-overlays/ic_radio_square_checked/original.png) | ![dark](./assets/custom-overlays/ic_radio_square_checked/dark.png) | ![light](./assets/custom-overlays/ic_radio_square_checked/light.png) |
+| ![original](./assets/custom-overlays/greenies/original.png) | ![dark](./assets/custom-overlays/greenies/dark.png) | ![light](./assets/custom-overlays/greenies/light.png) |
+
+## Mention Line Color
+
+Recolors the line next to a message where you were mentioned
+
+Structure:
+
+- `mentionLineColor` — a [color](#the-color-system)
+
+Example:
+
+```json
+"plus": {
+ "version": 0,
+ "mentionLineColor": "#f00"
+}
+```
+
+Would look like:
+
+| Original | Recolored |
+| ----------------------------------------------------- | ------------------------------------------------------- |
+| ![original](./assets/mention-line-color/original.png) | ![recolored](./assets/mention-line-color/recolored.png) |
+
+## Iconpack
+
+Changes how icons look. You can find the full list of iconpacks [here](./ICONPACKS.md)
+
+Structure:
+
+- `iconpack` — the ID of the iconpack
+
+Example:
+
+```json
+"plus": {
+ "version": 0,
+ "iconpack": "solar"
+}
+```
+
+Would look like:
+
+| Original Icons | MD3 | Solar |
+| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| ![Original super reaction icon](https://raw.githubusercontent.com/nexpid/Themelings/data/icons/design/components/Icon/native/redesign/generated/images/SuperReactionIcon.png) | ![MD3 super reaction icon](https://raw.githubusercontent.com/Panniku/vd-iconpacks/master/Packs/MaterialDesign3/images/native/ic_add_super_reaction.png) | ![Solar super reaction icon](https://raw.githubusercontent.com/Moodzz1/discord-iconpacks/master/Packs/Solar/design/components/Icon/native/redesign/generated/images/SuperReactionIcon@3x.png) |
+| ![Original webhook icon](https://raw.githubusercontent.com/nexpid/Themelings/data/icons/design/components/Icon/native/redesign/generated/images/WebhookIcon.png) | ![MD3 webhook icon](https://raw.githubusercontent.com/Panniku/vd-iconpacks/master/Packs/MaterialDesign3/images/native/icons/ic_webhook_24px.png) | ![Solar webhook icon](https://raw.githubusercontent.com/Moodzz1/discord-iconpacks/master/Packs/Solar/design/components/Icon/native/redesign/generated/images/WebhookIcon@3x.png) |
+| ![Original keyboard icon](https://raw.githubusercontent.com/nexpid/Themelings/data/icons/design/components/Icon/native/redesign/generated/images/KeyboardIcon.png) | ![MD3 keyboard icon](https://raw.githubusercontent.com/Panniku/vd-iconpacks/master/Packs/MaterialDesign3/images/native/emoji/ic_keyboard_24px.png) | ![Solar webhook icon](https://raw.githubusercontent.com/Moodzz1/discord-iconpacks/master/Packs/Solar/design/components/Icon/native/redesign/generated/images/KeyboardIcon@3x.png) |
+
+## The Color System
+
+A color value can either be:
+
+- An array of strings, each entry recoloring a theme in this order:
+
+ - dark/darker **(required)**
+ - light
+ - midnight
+
+- A string, a **#HEX** color for every theme
+
+Example:
+
+| Color | Dark | Light | Midnight |
+| -------------------------- | ----------------------------------- | ------------------------------------- | ----------------------------------- |
+| `["#f00", "#0f0", "#00f"]` | ![red](./assets/colors/red.svg) | ![green](./assets/colors/green.svg) | ![blue](./assets/colors/blue.svg) |
+| `["#f0f", "#ff0"]` | ![pink](./assets/colors/pink.svg) | ![yellow](./assets/colors/yellow.svg) | ![pink](./assets/colors/pink.svg) |
+| `["#0ff"]` | ![cyan](./assets/colors/cyan.svg) | **unchanged** | ![cyan](./assets/colors/cyan.svg) |
+| `"#fff"` | ![white](./assets/colors/white.svg) | ![white](./assets/colors/white.svg) | ![white](./assets/colors/white.svg) |
diff --git a/docs/README.md b/docs/README.md
new file mode 100644
index 0000000..e0db8b7
--- /dev/null
+++ b/docs/README.md
@@ -0,0 +1,28 @@
+# Themes+ Documentation
+
+Welcome to the Themes+ documentation! Here you will find how to set up Themes+ in your theme and how to configure its features!
+
+## Plus Object
+
+If you want Themes+ to work with your theme, you need to add this plus object to your JSON:
+
+```diff
+ {
+ "name": "Theme",
+ "description": "My first theme",
+ "authors": [],
+ "spec": 2,
++ "plus": {
++ "version": 0
++ }
+ }
+```
+
+The `version` property is an integer that is used for compability. The latest version is **`0`**.
+Here's documentation for all current available versions:
+
+- [Version 0](./PLUS-VERSION-0.md)
+
+## Iconpacks
+
+A list of iconpacks is available [here](./ICONPACKS.md)
diff --git a/docs/assets/colors/blue.svg b/docs/assets/colors/blue.svg
new file mode 100644
index 0000000..4f87376
--- /dev/null
+++ b/docs/assets/colors/blue.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/docs/assets/colors/cyan.svg b/docs/assets/colors/cyan.svg
new file mode 100644
index 0000000..e51fb93
--- /dev/null
+++ b/docs/assets/colors/cyan.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/docs/assets/colors/green.svg b/docs/assets/colors/green.svg
new file mode 100644
index 0000000..e803b2a
--- /dev/null
+++ b/docs/assets/colors/green.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/docs/assets/colors/pink.svg b/docs/assets/colors/pink.svg
new file mode 100644
index 0000000..97f85af
--- /dev/null
+++ b/docs/assets/colors/pink.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/docs/assets/colors/red.svg b/docs/assets/colors/red.svg
new file mode 100644
index 0000000..f9a220d
--- /dev/null
+++ b/docs/assets/colors/red.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/docs/assets/colors/white.svg b/docs/assets/colors/white.svg
new file mode 100644
index 0000000..9db6d41
--- /dev/null
+++ b/docs/assets/colors/white.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/docs/assets/colors/yellow.svg b/docs/assets/colors/yellow.svg
new file mode 100644
index 0000000..ccddb0a
--- /dev/null
+++ b/docs/assets/colors/yellow.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/docs/assets/custom-overlayed/app_installed_check/base.png b/docs/assets/custom-overlayed/app_installed_check/base.png
new file mode 100644
index 0000000..f120788
Binary files /dev/null and b/docs/assets/custom-overlayed/app_installed_check/base.png differ
diff --git a/docs/assets/custom-overlayed/app_installed_check/original.png b/docs/assets/custom-overlayed/app_installed_check/original.png
new file mode 100644
index 0000000..d2473d9
Binary files /dev/null and b/docs/assets/custom-overlayed/app_installed_check/original.png differ
diff --git a/docs/assets/custom-overlayed/app_installed_check/overlay.png b/docs/assets/custom-overlayed/app_installed_check/overlay.png
new file mode 100644
index 0000000..d464fc1
Binary files /dev/null and b/docs/assets/custom-overlayed/app_installed_check/overlay.png differ
diff --git a/docs/assets/custom-overlayed/ic_check/base.png b/docs/assets/custom-overlayed/ic_check/base.png
new file mode 100644
index 0000000..cca6e78
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_check/base.png differ
diff --git a/docs/assets/custom-overlayed/ic_check/original.png b/docs/assets/custom-overlayed/ic_check/original.png
new file mode 100644
index 0000000..9a3d246
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_check/original.png differ
diff --git a/docs/assets/custom-overlayed/ic_check/overlay.png b/docs/assets/custom-overlayed/ic_check/overlay.png
new file mode 100644
index 0000000..d464fc1
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_check/overlay.png differ
diff --git a/docs/assets/custom-overlayed/ic_new_pins/base.png b/docs/assets/custom-overlayed/ic_new_pins/base.png
new file mode 100644
index 0000000..4f305d5
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_new_pins/base.png differ
diff --git a/docs/assets/custom-overlayed/ic_new_pins/original.png b/docs/assets/custom-overlayed/ic_new_pins/original.png
new file mode 100644
index 0000000..883f3d7
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_new_pins/original.png differ
diff --git a/docs/assets/custom-overlayed/ic_new_pins/recolored.png b/docs/assets/custom-overlayed/ic_new_pins/recolored.png
new file mode 100644
index 0000000..efec14b
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_new_pins/recolored.png differ
diff --git a/docs/assets/custom-overlayed/ic_new_pins_light/base.png b/docs/assets/custom-overlayed/ic_new_pins_light/base.png
new file mode 100644
index 0000000..a2b6c9c
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_new_pins_light/base.png differ
diff --git a/docs/assets/custom-overlayed/ic_new_pins_light/original.png b/docs/assets/custom-overlayed/ic_new_pins_light/original.png
new file mode 100644
index 0000000..18ed81c
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_new_pins_light/original.png differ
diff --git a/docs/assets/custom-overlayed/ic_radio_square_checked/base.png b/docs/assets/custom-overlayed/ic_radio_square_checked/base.png
new file mode 100644
index 0000000..2ef9d5e
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_radio_square_checked/base.png differ
diff --git a/docs/assets/custom-overlayed/ic_radio_square_checked/original.png b/docs/assets/custom-overlayed/ic_radio_square_checked/original.png
new file mode 100644
index 0000000..2f4fcc2
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_radio_square_checked/original.png differ
diff --git a/docs/assets/custom-overlayed/ic_radio_square_checked/overlay.png b/docs/assets/custom-overlayed/ic_radio_square_checked/overlay.png
new file mode 100644
index 0000000..d464fc1
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_radio_square_checked/overlay.png differ
diff --git a/docs/assets/custom-overlayed/ic_radio_square_checked/recolored.png b/docs/assets/custom-overlayed/ic_radio_square_checked/recolored.png
new file mode 100644
index 0000000..8f67d49
Binary files /dev/null and b/docs/assets/custom-overlayed/ic_radio_square_checked/recolored.png differ
diff --git a/docs/assets/custom-overlays/check.png b/docs/assets/custom-overlays/check.png
new file mode 100644
index 0000000..3213ebe
Binary files /dev/null and b/docs/assets/custom-overlays/check.png differ
diff --git a/docs/assets/custom-overlays/greenies/base.png b/docs/assets/custom-overlays/greenies/base.png
new file mode 100644
index 0000000..c19cb04
Binary files /dev/null and b/docs/assets/custom-overlays/greenies/base.png differ
diff --git a/docs/assets/custom-overlays/greenies/dark.png b/docs/assets/custom-overlays/greenies/dark.png
new file mode 100644
index 0000000..773355f
Binary files /dev/null and b/docs/assets/custom-overlays/greenies/dark.png differ
diff --git a/docs/assets/custom-overlays/greenies/example.png b/docs/assets/custom-overlays/greenies/example.png
new file mode 100644
index 0000000..5fafdfe
Binary files /dev/null and b/docs/assets/custom-overlays/greenies/example.png differ
diff --git a/docs/assets/custom-overlays/greenies/light.png b/docs/assets/custom-overlays/greenies/light.png
new file mode 100644
index 0000000..5e52d7a
Binary files /dev/null and b/docs/assets/custom-overlays/greenies/light.png differ
diff --git a/docs/assets/custom-overlays/greenies/original.png b/docs/assets/custom-overlays/greenies/original.png
new file mode 100644
index 0000000..f43bda2
Binary files /dev/null and b/docs/assets/custom-overlays/greenies/original.png differ
diff --git a/docs/assets/custom-overlays/greenies/overlay.png b/docs/assets/custom-overlays/greenies/overlay.png
new file mode 100644
index 0000000..88bd42a
Binary files /dev/null and b/docs/assets/custom-overlays/greenies/overlay.png differ
diff --git a/docs/assets/custom-overlays/ic_radio_circle_checked/base.png b/docs/assets/custom-overlays/ic_radio_circle_checked/base.png
new file mode 100644
index 0000000..1f5d302
Binary files /dev/null and b/docs/assets/custom-overlays/ic_radio_circle_checked/base.png differ
diff --git a/docs/assets/custom-overlays/ic_radio_circle_checked/example.png b/docs/assets/custom-overlays/ic_radio_circle_checked/example.png
new file mode 100644
index 0000000..63de08f
Binary files /dev/null and b/docs/assets/custom-overlays/ic_radio_circle_checked/example.png differ
diff --git a/docs/assets/custom-overlays/ic_radio_circle_checked/original.png b/docs/assets/custom-overlays/ic_radio_circle_checked/original.png
new file mode 100644
index 0000000..38b3e62
Binary files /dev/null and b/docs/assets/custom-overlays/ic_radio_circle_checked/original.png differ
diff --git a/docs/assets/custom-overlays/ic_radio_circle_checked/overlay.png b/docs/assets/custom-overlays/ic_radio_circle_checked/overlay.png
new file mode 100644
index 0000000..0993bd3
Binary files /dev/null and b/docs/assets/custom-overlays/ic_radio_circle_checked/overlay.png differ
diff --git a/docs/assets/custom-overlays/ic_radio_square_checked/base.png b/docs/assets/custom-overlays/ic_radio_square_checked/base.png
new file mode 100644
index 0000000..18ba149
Binary files /dev/null and b/docs/assets/custom-overlays/ic_radio_square_checked/base.png differ
diff --git a/docs/assets/custom-overlays/ic_radio_square_checked/dark.png b/docs/assets/custom-overlays/ic_radio_square_checked/dark.png
new file mode 100644
index 0000000..b33531a
Binary files /dev/null and b/docs/assets/custom-overlays/ic_radio_square_checked/dark.png differ
diff --git a/docs/assets/custom-overlays/ic_radio_square_checked/example.png b/docs/assets/custom-overlays/ic_radio_square_checked/example.png
new file mode 100644
index 0000000..ad93f86
Binary files /dev/null and b/docs/assets/custom-overlays/ic_radio_square_checked/example.png differ
diff --git a/docs/assets/custom-overlays/ic_radio_square_checked/light.png b/docs/assets/custom-overlays/ic_radio_square_checked/light.png
new file mode 100644
index 0000000..6f6baf4
Binary files /dev/null and b/docs/assets/custom-overlays/ic_radio_square_checked/light.png differ
diff --git a/docs/assets/custom-overlays/ic_radio_square_checked/original.png b/docs/assets/custom-overlays/ic_radio_square_checked/original.png
new file mode 100644
index 0000000..3ae7c05
Binary files /dev/null and b/docs/assets/custom-overlays/ic_radio_square_checked/original.png differ
diff --git a/docs/assets/custom-overlays/ic_radio_square_checked/overlay.png b/docs/assets/custom-overlays/ic_radio_square_checked/overlay.png
new file mode 100644
index 0000000..b945aca
Binary files /dev/null and b/docs/assets/custom-overlays/ic_radio_square_checked/overlay.png differ
diff --git a/docs/assets/custom-overlays/ic_selection_checked/base.png b/docs/assets/custom-overlays/ic_selection_checked/base.png
new file mode 100644
index 0000000..054e568
Binary files /dev/null and b/docs/assets/custom-overlays/ic_selection_checked/base.png differ
diff --git a/docs/assets/custom-overlays/ic_selection_checked/example.png b/docs/assets/custom-overlays/ic_selection_checked/example.png
new file mode 100644
index 0000000..bba7f80
Binary files /dev/null and b/docs/assets/custom-overlays/ic_selection_checked/example.png differ
diff --git a/docs/assets/custom-overlays/ic_selection_checked/original.png b/docs/assets/custom-overlays/ic_selection_checked/original.png
new file mode 100644
index 0000000..1ec58c8
Binary files /dev/null and b/docs/assets/custom-overlays/ic_selection_checked/original.png differ
diff --git a/docs/assets/custom-overlays/ic_selection_checked/overlay.png b/docs/assets/custom-overlays/ic_selection_checked/overlay.png
new file mode 100644
index 0000000..3213ebe
Binary files /dev/null and b/docs/assets/custom-overlays/ic_selection_checked/overlay.png differ
diff --git a/docs/assets/icons/AppsIcon/dark.png b/docs/assets/icons/AppsIcon/dark.png
new file mode 100644
index 0000000..1c49f52
Binary files /dev/null and b/docs/assets/icons/AppsIcon/dark.png differ
diff --git a/docs/assets/icons/AppsIcon/original.png b/docs/assets/icons/AppsIcon/original.png
new file mode 100644
index 0000000..89e8d3a
Binary files /dev/null and b/docs/assets/icons/AppsIcon/original.png differ
diff --git a/docs/assets/icons/GlobeEarthIcon/dark.png b/docs/assets/icons/GlobeEarthIcon/dark.png
new file mode 100644
index 0000000..e7e9be7
Binary files /dev/null and b/docs/assets/icons/GlobeEarthIcon/dark.png differ
diff --git a/docs/assets/icons/GlobeEarthIcon/light.png b/docs/assets/icons/GlobeEarthIcon/light.png
new file mode 100644
index 0000000..2448c95
Binary files /dev/null and b/docs/assets/icons/GlobeEarthIcon/light.png differ
diff --git a/docs/assets/icons/GlobeEarthIcon/midnight.png b/docs/assets/icons/GlobeEarthIcon/midnight.png
new file mode 100644
index 0000000..4139b01
Binary files /dev/null and b/docs/assets/icons/GlobeEarthIcon/midnight.png differ
diff --git a/docs/assets/icons/GlobeEarthIcon/original.png b/docs/assets/icons/GlobeEarthIcon/original.png
new file mode 100644
index 0000000..65e4d17
Binary files /dev/null and b/docs/assets/icons/GlobeEarthIcon/original.png differ
diff --git a/docs/assets/icons/HubIcon/all.png b/docs/assets/icons/HubIcon/all.png
new file mode 100644
index 0000000..8d12d08
Binary files /dev/null and b/docs/assets/icons/HubIcon/all.png differ
diff --git a/docs/assets/icons/HubIcon/original.png b/docs/assets/icons/HubIcon/original.png
new file mode 100644
index 0000000..973fd71
Binary files /dev/null and b/docs/assets/icons/HubIcon/original.png differ
diff --git a/docs/assets/mention-line-color/original.png b/docs/assets/mention-line-color/original.png
new file mode 100644
index 0000000..1036d7b
Binary files /dev/null and b/docs/assets/mention-line-color/original.png differ
diff --git a/docs/assets/mention-line-color/recolored.png b/docs/assets/mention-line-color/recolored.png
new file mode 100644
index 0000000..4b59831
Binary files /dev/null and b/docs/assets/mention-line-color/recolored.png differ
diff --git a/docs/assets/unread-badge-color/original.png b/docs/assets/unread-badge-color/original.png
new file mode 100644
index 0000000..b075e2c
Binary files /dev/null and b/docs/assets/unread-badge-color/original.png differ
diff --git a/docs/assets/unread-badge-color/recolored.png b/docs/assets/unread-badge-color/recolored.png
new file mode 100644
index 0000000..88dd003
Binary files /dev/null and b/docs/assets/unread-badge-color/recolored.png differ
diff --git a/iconpacks/configs/rosiecord-iconsax.json b/iconpacks/configs/rosiecord-iconsax.json
deleted file mode 100644
index 6db003f..0000000
--- a/iconpacks/configs/rosiecord-iconsax.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "biggerStatus": false
-}
diff --git a/iconpacks/list.json b/iconpacks/list.json
index 36199a1..0490c43 100644
--- a/iconpacks/list.json
+++ b/iconpacks/list.json
@@ -39,7 +39,6 @@
"source": "https://iconsax.io/"
},
"suffix": "@2x",
- "config": "https://raw.githubusercontent.com/nexpid/VendettaThemesPlus/main/iconpacks/configs/rosiecord-iconsax.json",
"load": "https://raw.githubusercontent.com/acquitelol/rosiecord/master/Packs/Iconsax/"
},
{