refactor: massive USRPFP overhaul (#3)
This repo completely overhauls how USRPFP works. Some changes include: - Deleted some leftover files - Edited README.md a bit - Avatars and badges are now stored in `db/data.json` - CSS file (`db/dist.css`) is automatically generated by a GitHub workflow If you have questions, lmk
This commit is contained in:
parent
ea2d738175
commit
5a5d2c2a2b
14 changed files with 288 additions and 377 deletions
39
.github/scripts/convert/index.mjs
vendored
Normal file
39
.github/scripts/convert/index.mjs
vendored
Normal file
|
|
@ -0,0 +1,39 @@
|
||||||
|
import { readFile, writeFile } from "fs/promises";
|
||||||
|
import { join } from "path";
|
||||||
|
|
||||||
|
console.time("Done");
|
||||||
|
|
||||||
|
console.log("Reading avatarsdatabase.css...");
|
||||||
|
const avis = (await readFile(join("../../", "avatarsdatabase.css"), "utf8"))
|
||||||
|
.replace(/\r/g, "")
|
||||||
|
.split("\n");
|
||||||
|
|
||||||
|
const imageMatcher = /url\((?:'|")([^'"]+)(?:'|")\)/;
|
||||||
|
const avatarMatcher = /^\/\* Custom avatar for ([0-9]+) \*\/$/;
|
||||||
|
const badgeMatcher = /^\/\* Custom badge for (.*?) \*\/$/;
|
||||||
|
|
||||||
|
const avatars = {};
|
||||||
|
for (let i = 0; i < avis.length; i++) {
|
||||||
|
const l = avis[i];
|
||||||
|
const id = l.match(avatarMatcher)?.[1];
|
||||||
|
if (id) avatars[id] = avis[i + 2].match(imageMatcher)[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
const badges = {};
|
||||||
|
for (let i = 0; i < avis.length; i++) {
|
||||||
|
const l = avis[i];
|
||||||
|
const username = l.match(badgeMatcher)?.[1];
|
||||||
|
if (username) badges[username] = avis[i + 10].match(imageMatcher)[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
await writeFile(
|
||||||
|
join("../../", "db", "data.json"),
|
||||||
|
JSON.stringify(
|
||||||
|
{
|
||||||
|
avatars,
|
||||||
|
badges,
|
||||||
|
},
|
||||||
|
undefined,
|
||||||
|
4
|
||||||
|
)
|
||||||
|
);
|
||||||
55
.github/scripts/generate/index.mjs
vendored
Normal file
55
.github/scripts/generate/index.mjs
vendored
Normal file
|
|
@ -0,0 +1,55 @@
|
||||||
|
import { readFile, writeFile } from "fs/promises";
|
||||||
|
import { join } from "path";
|
||||||
|
import UglifyCSS from "uglifycss";
|
||||||
|
|
||||||
|
console.time("Done");
|
||||||
|
|
||||||
|
const uglify = !process.argv.includes("--debug");
|
||||||
|
|
||||||
|
console.log("Getting templates...");
|
||||||
|
const templateLines = (
|
||||||
|
await readFile(join("../../", "db", "template.css"), "utf8")
|
||||||
|
)
|
||||||
|
.replace(/\r/g, "")
|
||||||
|
.split("\n");
|
||||||
|
|
||||||
|
const templates = {
|
||||||
|
avatar: "",
|
||||||
|
badge: "",
|
||||||
|
};
|
||||||
|
|
||||||
|
for (const id of Object.keys(templates)) {
|
||||||
|
const start = templateLines.findIndex(
|
||||||
|
(x) => x === `/* ${id.toUpperCase()}-TEMPLATE-BEGIN */`
|
||||||
|
),
|
||||||
|
end = templateLines.findIndex(
|
||||||
|
(x) => x === `/* ${id.toUpperCase()}-TEMPLATE-END */`
|
||||||
|
);
|
||||||
|
|
||||||
|
if (start >= 0 && end >= 0)
|
||||||
|
templates[id] = templateLines.slice(start + 1, end).join("\n");
|
||||||
|
else throw new Error(`Failed to get template lines for: ${id}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log("Generating dist.css...");
|
||||||
|
const data = JSON.parse(
|
||||||
|
await readFile(join("../../", "db", "data.json"), "utf8")
|
||||||
|
);
|
||||||
|
|
||||||
|
const dist = [];
|
||||||
|
|
||||||
|
for (const [id, img] of Object.entries(data.avatars)) {
|
||||||
|
dist.push(templates.avatar.replace(/{id}/g, id).replace(/{img}/g, img));
|
||||||
|
}
|
||||||
|
for (const [username, img] of Object.entries(data.badges)) {
|
||||||
|
dist.push(
|
||||||
|
templates.badge.replace(/{username}/g, username).replace(/{img}/g, img)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
await writeFile(
|
||||||
|
join("../../", "db", "dist.css"),
|
||||||
|
uglify ? UglifyCSS.processString(dist.join("\n")) : dist.join("\n\n")
|
||||||
|
);
|
||||||
|
|
||||||
|
console.timeEnd("Done");
|
||||||
12
.github/scripts/package.json
vendored
Normal file
12
.github/scripts/package.json
vendored
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
"name": "scripts",
|
||||||
|
"private": true,
|
||||||
|
"scripts": {
|
||||||
|
"convert": "node convert/index.mjs",
|
||||||
|
"generate": "node generate/index.mjs",
|
||||||
|
"generate:debug": "node generate/index.mjs --debug"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"uglifycss": "^0.0.29"
|
||||||
|
}
|
||||||
|
}
|
||||||
18
.github/scripts/pnpm-lock.yaml
generated
vendored
Normal file
18
.github/scripts/pnpm-lock.yaml
generated
vendored
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
lockfileVersion: '6.0'
|
||||||
|
|
||||||
|
settings:
|
||||||
|
autoInstallPeers: true
|
||||||
|
excludeLinksFromLockfile: false
|
||||||
|
|
||||||
|
dependencies:
|
||||||
|
uglifycss:
|
||||||
|
specifier: ^0.0.29
|
||||||
|
version: 0.0.29
|
||||||
|
|
||||||
|
packages:
|
||||||
|
|
||||||
|
/uglifycss@0.0.29:
|
||||||
|
resolution: {integrity: sha512-J2SQ2QLjiknNGbNdScaNZsXgmMGI0kYNrXaDlr4obnPW9ni1jljb1NeEVWAiTgZ8z+EBWP2ozfT9vpy03rjlMQ==}
|
||||||
|
engines: {node: '>=6.4.0'}
|
||||||
|
hasBin: true
|
||||||
|
dev: false
|
||||||
52
.github/workflows/generate-db.yml
vendored
Normal file
52
.github/workflows/generate-db.yml
vendored
Normal file
|
|
@ -0,0 +1,52 @@
|
||||||
|
name: Generate Database
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
paths:
|
||||||
|
- ".github/workflows/generate-db.yml"
|
||||||
|
- ".github/scripts/generate/**/*.*"
|
||||||
|
- "db/data.json"
|
||||||
|
- "db/template.css"
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: ${{ github.ref }}
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
generate:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- uses: actions/setup-node@v3
|
||||||
|
with:
|
||||||
|
node-version: 18.x
|
||||||
|
|
||||||
|
- name: Setup PNPM
|
||||||
|
working-directory: .github/scripts
|
||||||
|
run: |
|
||||||
|
npm i -g pnpm
|
||||||
|
pnpm i
|
||||||
|
|
||||||
|
- name: Run generate script
|
||||||
|
working-directory: .github/scripts
|
||||||
|
run: pnpm run generate
|
||||||
|
|
||||||
|
- name: Push 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 db/dist.css
|
||||||
|
git commit -m "chore(db): update dist.css (${{ github.sha || 'manual trigger' }})" || true
|
||||||
|
git push
|
||||||
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
avatarsdatabase.css
|
||||||
|
node_modules
|
||||||
53
README.md
53
README.md
|
|
@ -1,41 +1,50 @@
|
||||||
<h1 align="center">USERPFP REBORN</h1>
|
<h1 align="center">
|
||||||
<p align="center">A theme for having custom Profile Pictures - Continuation by FoxStorm1!</p>
|
USERPFP REBORN
|
||||||
|
</h1>
|
||||||
|
<p align="center">
|
||||||
|
A theme for having custom Profile Pictures - Continuation by FoxStorm1!
|
||||||
|
<br/>
|
||||||
|
<img height="150" align="center" src="https://i.ibb.co/mbQJSKm/image-2023-07-16-112115872.png">
|
||||||
|
</p>
|
||||||
|
|
||||||
<p align="center"><img height="350" align="center" src="https://i.ibb.co/mbQJSKm/image-2023-07-16-112115872.png"></p>
|
## How to request a pfp
|
||||||
|
|
||||||
## Request your own pfp !
|
- Join [USRPFP Reborn](https://discord.gg/3VxcnBKcF6), read the rules and then go to the [#pfp-requests channel](https://canary.discord.com/channels/1129784704267210844/1130090223783641088) and send your avatar (link/attachment) and wait to be accepted.
|
||||||
* Join USRPFP Reborn https://discord.gg/BT54cvEvnY, read the rules and then go in this channel https://discord.com/channels/1129784704267210844/1130164302532317316 and send your avatar (link/attachment) and wait to be accepted.
|
|
||||||
|
|
||||||
**All requests are accepted/denied manually** by FoxStorm1. You should **wait a little moment** before your PFP **is accepted and added.**
|
- **All requests are accepted/denied manually** by FoxStorm1. You should **wait a little moment** before your PFP **is accepted and added.**
|
||||||
|
|
||||||
Maximum gif size is set to **12MB** !
|
- Maximum file size is **12MB**!
|
||||||
|
|
||||||
## How to see your pfp (after requested it !)
|
## How to use this theme
|
||||||
|
|
||||||
### 1. for [Vencord](https://vencord.dev) user, Use the theme
|
### 1. [Vencord](https://vencord.dev)
|
||||||
|
|
||||||
Enter https://raw.githubusercontent.com/Yeetov/USRPFP-Reborn/main/src/dist/source.css in the themes directory in settings.
|
Same as [Other client mods/Quick CSS](#3-other-client-modsquick-css)
|
||||||
|
|
||||||
This will import USERPFP for everyone can see your custom pfp and you see custom pfps of everyone
|
### 2. [Replugged](https://replugged.dev/)
|
||||||
### 2. for [Replugged](https://replugged.dev/) user, Clone the repo
|
|
||||||
|
|
||||||
Clone the repo with these commands (using [git](https://git-scm.com/downloads))
|
Clone the repo using [git](https://docs.github.com/en/get-started/quickstart/set-up-git)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd replugged\src\Powercord\themes && git clone https://github.com/Yeetov/USRPFP-Reborn
|
cd path_to_replugged/src/Powercord/themes && git clone https://github.com/Yeetov/USRPFP-Reborn
|
||||||
```
|
```
|
||||||
|
|
||||||
### 3. Use it as a snippet
|
### 3. Other client mods/Quick CSS
|
||||||
|
|
||||||
Add this CSS code in your custom-css setting.
|
Add this snippet to your Quick CSS:
|
||||||
|
|
||||||
```css
|
```css
|
||||||
@import url("https://github.com/Yeetov/USRPFP-Reborn/raw/main/src/dist/source.css");
|
@import url("https://github.com/Yeetov/USRPFP-Reborn/raw/main/src/dist/source.css");
|
||||||
```
|
```
|
||||||
|
|
||||||
### 4. UserPFP for Android
|
### 4. USRPFP for Android
|
||||||
Only available in [Vencord Android](https://github.com/Vencord/Android/releases)
|
|
||||||
same steps as Vencord
|
|
||||||
|
|
||||||
### 5. [UserBG](https://github.com/Discord-Custom-Covers/usrbg)
|
Currently only available for [Vencord Android](https://github.com/Vencord/Android/releases) (same steps as [Vencord](#1-vencord))
|
||||||
If you also want a custom banner without nitro you have to check [this](https://github.com/Discord-Custom-Covers/usrbg).
|
|
||||||
|
## Banner alternative
|
||||||
|
|
||||||
|
A predecessor to USRPFP is [USRBG](https://github.com/Discord-Custom-Covers/usrbg), which functions the same as USRPFP, but for avatars
|
||||||
|
|
||||||
|
<p align="center">
|
||||||
|
<i>readme revised by <a href="https://github.com/nexpid">nexpid</a></i>
|
||||||
|
</p>
|
||||||
|
|
|
||||||
|
|
@ -1,304 +0,0 @@
|
||||||
/* Start of placeholder code */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/USER_ID_1/"] {
|
|
||||||
content: url("AVATAR_URL_1");
|
|
||||||
}
|
|
||||||
/* End Of Placeholder Code */
|
|
||||||
/* Custom avatar for 559426966151757824 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/559426966151757824/"] {
|
|
||||||
content: url('https://i.ibb.co/RHG13CQ/wumpus-discord.gif');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Custom avatar for 854778452489797652 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/854778452489797652/"] {
|
|
||||||
content: url('https://i.ibb.co/zV4Nhqh/Surge.png');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Custom avatar for 1092083152962469968 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/1092083152962469968/"] {
|
|
||||||
content: url('https://i.ibb.co/R46FXTt/AicTDO9.gif');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Custom avatar for 623547607494557697 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/623547607494557697/"] {
|
|
||||||
content: url('https://i.ibb.co/Jm64Pb4/ab6761610000e5eba3a7cba23d68a4e73c3b8155-removebg-preview.png');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Custom avatar for 790303634034393169 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/790303634034393169/"] {
|
|
||||||
content: url('https://i.ibb.co/DGvPLNM/big-hero-6.gif');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Custom avatar for 965699084600115260 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/965699084600115260/"] {
|
|
||||||
content: url('https://i.ibb.co/zS0G5Xp/sasuke-icegif-1.gif')
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Custom avatar for 819191621676695563 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/819191621676695563/"] {
|
|
||||||
content: url('https://i.ibb.co/Qfnq11b/aZKs1Pm.gif')
|
|
||||||
}
|
|
||||||
/* Custom avatar for 863402791144521738 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/863402791144521738/"] {
|
|
||||||
content: url("https://i.ibb.co/PQbDG9W/ezgif-4-b13cfe6410.gif");
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Custom badge for clyde */
|
|
||||||
#app-mount [aria-label="clyde"] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label="clyde"] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label="clyde"] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label="clyde"] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label="clyde"] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label="clyde"] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.ibb.co/MSL3fPs/ezgif-1-327a983479.gif") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom badge for mat.rix. */
|
|
||||||
#app-mount [aria-label="mat.rix."] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label="mat.rix."] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label="mat.rix."] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label="mat.rix."] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label="mat.rix."] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label="mat.rix."] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.ibb.co/hZWmFTc/ezgif-4-480f60dec1.gif") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom badge for AniMod */
|
|
||||||
#app-mount [aria-label="AniMod"] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label="AniMod"] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label="AniMod"] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label="AniMod"] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label="AniMod"] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label="AniMod"] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.ibb.co/rkPXN6t/ezgif-2-f387cc7c43.gif") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom avatar for 670903344180494336 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/670903344180494336/"] {
|
|
||||||
content: url("https://i.ibb.co/XFym5z9/04b70e879fd98bae807cceb835df6566.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 744231650812231782 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/744231650812231782/"] {
|
|
||||||
content: url("https://i.ibb.co/Tb6KYxk/trevor-belmont.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 479688142908162059 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/479688142908162059/"] {
|
|
||||||
content: url("https://i.ibb.co/HqsDX2K/discord-avatar-128-647-YA.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 368521195940741122 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/368521195940741122/"] {
|
|
||||||
content: url("https://i.ibb.co/kcbffgJ/Untitled-design.gif");
|
|
||||||
}
|
|
||||||
url('https://i.ibb.co/PmhxnwC/z2WFo.gif')
|
|
||||||
}
|
|
||||||
/* Custom server icon for USRPFP Reborn */
|
|
||||||
[src^="https://cdn.discordapp.com/icons/1129784704267210844/"] {
|
|
||||||
content: url("https://i.ibb.co/VHCDszQ/USRPFP-REBORN.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 184405311681986560 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/184405311681986560/"] {
|
|
||||||
content: url("https://i.ibb.co/x79x5R7/USRPFP-REBORN-1.gif");
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Custom badge for Midori */
|
|
||||||
#app-mount [aria-label="Midori"] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label="Midori"] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label="Midori"] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label="Midori"] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label="Midori"] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label="Midori"] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.imgur.com/S49qWoV.png") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom avatar for 964563933774098462 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/964563933774098462/"] {
|
|
||||||
content: url("https://i.ibb.co/0yQwpmg/discord-avatar-128-3-S6-SJ.gif");
|
|
||||||
}
|
|
||||||
/* Custom badge for .huwedwards */
|
|
||||||
#app-mount [aria-label=".huwedwards"] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label=".huwedwards"] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label=".huwedwards"] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label=".huwedwards"] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label=".huwedwards"] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label=".huwedwards"] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.imgur.com/aSuFZiv.png") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom avatar for 518223653134139403 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/518223653134139403/"] {
|
|
||||||
content: url("https://i.ibb.co/hmSW3k0/Ghost-Compat.gif");
|
|
||||||
}
|
|
||||||
/* Custom badge for dragonclaw08mm */
|
|
||||||
#app-mount [aria-label="dragonclaw08mm"] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label="dragonclaw08mm"] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label="dragonclaw08mm"] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label="dragonclaw08mm"] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label="dragonclaw08mm"] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label="dragonclaw08mm"] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.ibb.co/S3yzF3b/88387ea8-43b1-47fa-999c-5c57a61a6661.gif") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom avatar for 859824986432864286 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/859824986432864286/"] {
|
|
||||||
content: url("https://i.ibb.co/cbVPBsF/giphy.webp");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 443545183997657120 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/443545183997657120/"] {
|
|
||||||
content: url("https://i.ibb.co/G3bsGrD/discord-avatar-128-CIN87.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 739735540483752006 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/739735540483752006/"] {
|
|
||||||
content: url("https://i.ibb.co/7KFZjTD/a-223fcb98cdcf817c4aad71bded70b227.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 345052005976506378 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/345052005976506378/"] {
|
|
||||||
content: url("https://i.imgur.com/WHb13Hy.gif");
|
|
||||||
}
|
|
||||||
/* Custom badge for wx78main */
|
|
||||||
#app-mount [aria-label="wx78main"] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label="wx78main"] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label="wx78main"] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label="wx78main"] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label="wx78main"] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label="wx78main"] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.ibb.co/rtnLGHG/ezgif-2-f0f0477890.gif") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom avatar for 683715697079091286 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/683715697079091286/"] {
|
|
||||||
content: url("https://i.ibb.co/P9C7zqF/ezgif-2-f0f0477890.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 1116074488774262835 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/1116074488774262835/"] {
|
|
||||||
content: url("https://i.ibb.co/VjKKFfj/168277505194630066-1.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 1114869512769126441 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/1114869512769126441/"] {
|
|
||||||
content: url("https://i.ibb.co/QY227Fs/6ee8922d9b8da92c120784e66cd8ef6ed3e43ab4-hq.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 739455398712442910 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/739455398712442910/"] {
|
|
||||||
content: url("https://i.ibb.co/ScJ0ywB/ezgif-4-25f9d6df7a.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 372717326199422987 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/372717326199422987/"] {
|
|
||||||
content: url("https://i.ibb.co/CVrfpWX/ezgif-com-gif-maker-120.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 1081588818550997096 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/1081588818550997096/"] {
|
|
||||||
content: url("https://i.ibb.co/2PhXd8j/ezgif-1-5594c65fcb.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 869877955491401758 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/869877955491401758/"] {
|
|
||||||
content: url("https://i.ibb.co/tZC1Xbk/ezgif-1-65f3632025.gif");
|
|
||||||
}
|
|
||||||
/* Custom badge for Blip */
|
|
||||||
#app-mount [aria-label="Blip"] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label="Blip"] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label="Blip"] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label="Blip"] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label="Blip"] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label="Blip"] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.ibb.co/4gcmPvb/output-onlinegiftools-1.gif") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom avatar for 1102739490503659622 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/1102739490503659622/"] {
|
|
||||||
content: url("https://i.ibb.co/Xjbgryz/a-96003f8bea8da37738df335ee9c41697.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 159985870458322944 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/159985870458322944/"] {
|
|
||||||
content: url("https://i.ibb.co/NCVnCSn/discord-avatar-128-YS2-VY.gif");
|
|
||||||
}
|
|
||||||
/* Custom badge for Carl-bot */
|
|
||||||
#app-mount [aria-label="Carl-bot"] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label="Carl-bot"] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label="Carl-bot"] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label="Carl-bot"] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label="Carl-bot"] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label="Carl-bot"] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.ibb.co/hcKhhS2/output-onlinegiftools.gif") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom avatar for 235148962103951360 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/235148962103951360/"] {
|
|
||||||
content: url("https://i.ibb.co/wJcVy0K/output-onlinegiftools.gif");
|
|
||||||
}
|
|
||||||
/* Custom badge for Dyno */
|
|
||||||
#app-mount [aria-label="Dyno"] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label="Dyno"] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label="Dyno"] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label="Dyno"] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label="Dyno"] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label="Dyno"] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.ibb.co/CMFFdZs/output-onlinegiftools-2.gif") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom avatar for 155149108183695360 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/155149108183695360/"] {
|
|
||||||
content: url("https://i.ibb.co/1J00hd8/discord-avatar-128-ALDTM.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 467377486141980682 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/467377486141980682"] {
|
|
||||||
content: url("https://i.ibb.co/T8PWYKZ/Untitled-design-1.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 557628352828014614 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/557628352828014614/"] {
|
|
||||||
content: url("https://i.ibb.co/wLK2xTK/Untitled-design-2.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 1005855578490404874 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/1005855578490404874/"] {
|
|
||||||
content: url("https://i.ibb.co/7Syf9Hf/96885ae92511ebe5f7edd86543101e62.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 505166442338058251 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/505166442338058251/"] {
|
|
||||||
content: url("https://i.ibb.co/xYP0b5S/output-onlinegiftools-4.gif");
|
|
||||||
}
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/1052863317942730802"] {
|
|
||||||
content:
|
|
||||||
url('https://i.ibb.co/qkSKzZB/ezgif-com-crop.gif')
|
|
||||||
}
|
|
||||||
/* Custom badge for astremia */
|
|
||||||
#app-mount [aria-label="astremia"] .badgeList-2aoHPw::before,
|
|
||||||
#app-mount [aria-label="astremia"] .profileBadges-2pItdR::before,
|
|
||||||
#app-mount [aria-label="astremia"] .profileBadge22-3GAYRy::before,
|
|
||||||
#app-mount [aria-label="astremia"] .profileBadge-12r2Nm::before,
|
|
||||||
#app-mount [aria-label="astremia"] .profileBadge24-sH1efV::before,
|
|
||||||
#app-mount [aria-label="astremia"] .badges-XRnWAp::before {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.ibb.co/5Y9qxDP/ezgif-4-c5c992d95d.png") center / 100% 100%;
|
|
||||||
}
|
|
||||||
/* Custom avatar for 789872551731527690 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/789872551731527690/"] {
|
|
||||||
content: url("https://i.ibb.co/RCQnSpF/output-onlinegiftools-5-1.gif");
|
|
||||||
}
|
|
||||||
/* Custom avatar for 500212086765518858 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/500212086765518858/"] {
|
|
||||||
content: url("https://i.ibb.co/djVGPbC/f2oRRN4.gif");
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Custom avatar for 406084422308331522 */
|
|
||||||
[src^="https://cdn.discordapp.com/avatars/406084422308331522/"] {
|
|
||||||
content: url('https://i.ibb.co/R9094gf/po62g-G9egz46-TFZQ.gif');
|
|
||||||
}
|
|
||||||
54
db/data.json
Normal file
54
db/data.json
Normal file
|
|
@ -0,0 +1,54 @@
|
||||||
|
{
|
||||||
|
"avatars": {
|
||||||
|
"559426966151757824": "https://i.ibb.co/RHG13CQ/wumpus-discord.gif",
|
||||||
|
"854778452489797652": "https://i.ibb.co/zV4Nhqh/Surge.png",
|
||||||
|
"1092083152962469968": "https://i.ibb.co/R46FXTt/AicTDO9.gif",
|
||||||
|
"623547607494557697": "https://i.ibb.co/Jm64Pb4/ab6761610000e5eba3a7cba23d68a4e73c3b8155-removebg-preview.png",
|
||||||
|
"790303634034393169": "https://i.ibb.co/DGvPLNM/big-hero-6.gif",
|
||||||
|
"965699084600115260": "https://i.ibb.co/zS0G5Xp/sasuke-icegif-1.gif",
|
||||||
|
"819191621676695563": "https://i.ibb.co/Qfnq11b/aZKs1Pm.gif",
|
||||||
|
"863402791144521738": "https://i.ibb.co/PQbDG9W/ezgif-4-b13cfe6410.gif",
|
||||||
|
"670903344180494336": "https://i.ibb.co/XFym5z9/04b70e879fd98bae807cceb835df6566.gif",
|
||||||
|
"744231650812231782": "https://i.ibb.co/Tb6KYxk/trevor-belmont.gif",
|
||||||
|
"479688142908162059": "https://i.ibb.co/HqsDX2K/discord-avatar-128-647-YA.gif",
|
||||||
|
"368521195940741122": "https://i.ibb.co/kcbffgJ/Untitled-design.gif",
|
||||||
|
"184405311681986560": "https://i.ibb.co/x79x5R7/USRPFP-REBORN-1.gif",
|
||||||
|
"964563933774098462": "https://i.ibb.co/0yQwpmg/discord-avatar-128-3-S6-SJ.gif",
|
||||||
|
"518223653134139403": "https://i.ibb.co/hmSW3k0/Ghost-Compat.gif",
|
||||||
|
"859824986432864286": "https://i.ibb.co/cbVPBsF/giphy.webp",
|
||||||
|
"443545183997657120": "https://i.ibb.co/G3bsGrD/discord-avatar-128-CIN87.gif",
|
||||||
|
"739735540483752006": "https://i.ibb.co/7KFZjTD/a-223fcb98cdcf817c4aad71bded70b227.gif",
|
||||||
|
"345052005976506378": "https://i.imgur.com/WHb13Hy.gif",
|
||||||
|
"683715697079091286": "https://i.ibb.co/P9C7zqF/ezgif-2-f0f0477890.gif",
|
||||||
|
"1116074488774262835": "https://i.ibb.co/VjKKFfj/168277505194630066-1.gif",
|
||||||
|
"1114869512769126441": "https://i.ibb.co/QY227Fs/6ee8922d9b8da92c120784e66cd8ef6ed3e43ab4-hq.gif",
|
||||||
|
"739455398712442910": "https://i.ibb.co/ScJ0ywB/ezgif-4-25f9d6df7a.gif",
|
||||||
|
"372717326199422987": "https://i.ibb.co/CVrfpWX/ezgif-com-gif-maker-120.gif",
|
||||||
|
"1081588818550997096": "https://i.ibb.co/2PhXd8j/ezgif-1-5594c65fcb.gif",
|
||||||
|
"869877955491401758": "https://i.ibb.co/tZC1Xbk/ezgif-1-65f3632025.gif",
|
||||||
|
"1102739490503659622": "https://i.ibb.co/Xjbgryz/a-96003f8bea8da37738df335ee9c41697.gif",
|
||||||
|
"159985870458322944": "https://i.ibb.co/NCVnCSn/discord-avatar-128-YS2-VY.gif",
|
||||||
|
"235148962103951360": "https://i.ibb.co/wJcVy0K/output-onlinegiftools.gif",
|
||||||
|
"155149108183695360": "https://i.ibb.co/1J00hd8/discord-avatar-128-ALDTM.gif",
|
||||||
|
"467377486141980682": "https://i.ibb.co/T8PWYKZ/Untitled-design-1.gif",
|
||||||
|
"557628352828014614": "https://i.ibb.co/wLK2xTK/Untitled-design-2.gif",
|
||||||
|
"1005855578490404874": "https://i.ibb.co/7Syf9Hf/96885ae92511ebe5f7edd86543101e62.gif",
|
||||||
|
"505166442338058251": "https://i.ibb.co/xYP0b5S/output-onlinegiftools-4.gif",
|
||||||
|
"789872551731527690": "https://i.ibb.co/RCQnSpF/output-onlinegiftools-5-1.gif",
|
||||||
|
"500212086765518858": "https://i.ibb.co/djVGPbC/f2oRRN4.gif",
|
||||||
|
"406084422308331522": "https://i.ibb.co/R9094gf/po62g-G9egz46-TFZQ.gif"
|
||||||
|
},
|
||||||
|
"badges": {
|
||||||
|
"clyde": "https://i.ibb.co/MSL3fPs/ezgif-1-327a983479.gif",
|
||||||
|
"mat.rix.": "https://i.ibb.co/hZWmFTc/ezgif-4-480f60dec1.gif",
|
||||||
|
"AniMod": "https://i.ibb.co/rkPXN6t/ezgif-2-f387cc7c43.gif",
|
||||||
|
"Midori": "https://i.imgur.com/S49qWoV.png",
|
||||||
|
".huwedwards": "https://i.imgur.com/aSuFZiv.png",
|
||||||
|
"dragonclaw08mm": "https://i.ibb.co/S3yzF3b/88387ea8-43b1-47fa-999c-5c57a61a6661.gif",
|
||||||
|
"wx78main": "https://i.ibb.co/rtnLGHG/ezgif-2-f0f0477890.gif",
|
||||||
|
"Blip": "https://i.ibb.co/4gcmPvb/output-onlinegiftools-1.gif",
|
||||||
|
"Carl-bot": "https://i.ibb.co/hcKhhS2/output-onlinegiftools.gif",
|
||||||
|
"Dyno": "https://i.ibb.co/CMFFdZs/output-onlinegiftools-2.gif",
|
||||||
|
"astremia": "https://i.ibb.co/5Y9qxDP/ezgif-4-c5c992d95d.png"
|
||||||
|
}
|
||||||
|
}
|
||||||
1
db/dist.css
Normal file
1
db/dist.css
Normal file
File diff suppressed because one or more lines are too long
22
db/template.css
Normal file
22
db/template.css
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
/* AVATAR-TEMPLATE-BEGIN */
|
||||||
|
/* Custom avatar for {id} */
|
||||||
|
[src^="https://cdn.discordapp.com/avatars/{id}/"]
|
||||||
|
{
|
||||||
|
content: url("{img}");
|
||||||
|
}
|
||||||
|
/* AVATAR-TEMPLATE-END */
|
||||||
|
|
||||||
|
/* BADGE-TEMPLATE-BEGIN */
|
||||||
|
/* Custom badge for {username} */
|
||||||
|
#app-mount [aria-label="{username}"] .badgeList-2aoHPw::before,
|
||||||
|
#app-mount [aria-label="{username}"] .profileBadges-2pItdR::before,
|
||||||
|
#app-mount [aria-label="{username}"] .profileBadge22-3GAYRy::before,
|
||||||
|
#app-mount [aria-label="{username}"] .profileBadge-12r2Nm::before,
|
||||||
|
#app-mount [aria-label="{username}"] .profileBadge24-sH1efV::before,
|
||||||
|
#app-mount [aria-label="{username}"] .badges-XRnWAp::before {
|
||||||
|
content: "";
|
||||||
|
width: 22px;
|
||||||
|
height: 22px;
|
||||||
|
background: url("{img}") center / 100% 100%;
|
||||||
|
}
|
||||||
|
/* BADGE-TEMPLATE-END */
|
||||||
8
src/dist/source.css
vendored
8
src/dist/source.css
vendored
|
|
@ -1,8 +0,0 @@
|
||||||
/**
|
|
||||||
* @name USERPFP-Reborn
|
|
||||||
* @author FoxStorm1, Pikai
|
|
||||||
* @version 1.0.0
|
|
||||||
* @description A pure CSS database of user requested pfps for discord.
|
|
||||||
*/
|
|
||||||
|
|
||||||
@import url("https://raw.githubusercontent.com/Yeetov/USRPFP-Reborn/main/usrpfp.theme.css");
|
|
||||||
|
|
@ -1,37 +0,0 @@
|
||||||
/* FoxStorm1 */
|
|
||||||
|
|
||||||
.avatar-1BDn8e[src*="789872551731527690"] + h2 > .headerText-3Uvj1Y > .username-1A8OIy::after {
|
|
||||||
content: "";
|
|
||||||
background-image: url('https://i.imgur.com/8EsecpG.png');
|
|
||||||
transform: scale(1.6);
|
|
||||||
border-color: transparent !important;
|
|
||||||
background-color: transparent !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.avatar-1BDn8e[src*="789872551731527690"] + h2 > .headerText-3Uvj1Y > .username-1A8OIy:hover::after {
|
|
||||||
content: "He's Sus! 😮";
|
|
||||||
animation: fadeIn .5s;
|
|
||||||
color: white;
|
|
||||||
border-color: white;
|
|
||||||
width: 150px;
|
|
||||||
top: -1px;
|
|
||||||
font-size: 14px;
|
|
||||||
text-align: center;
|
|
||||||
border-radius: 4px;
|
|
||||||
padding: 2px 5px;
|
|
||||||
background-size: cover;
|
|
||||||
background: linear-gradient(0deg, rgba(0,0,0,1) 1%, rgba(253,45,45,1) 100%);
|
|
||||||
transform: scale(1);
|
|
||||||
transition:
|
|
||||||
color .2s ease,
|
|
||||||
background-color .2s ease;
|
|
||||||
}
|
|
||||||
|
|
||||||
#app-mount [data-user-id="789872551731527690"] .badgeList-1R1WgZ::after,
|
|
||||||
#app-mount [data-user-id="789872551731527690"] .profileBadges-ohc0Vu::after,
|
|
||||||
#app-mount [data-user-id="789872551731527690"] .badges-XRnWAp::after {
|
|
||||||
content: "";
|
|
||||||
width: 22px;
|
|
||||||
height: 22px;
|
|
||||||
background: url("https://i.imgur.com/MpibCg6.gif") center / 100% 100%;
|
|
||||||
}
|
|
||||||
|
|
@ -1,13 +1,9 @@
|
||||||
/**
|
/**
|
||||||
* @name USERPFP
|
* @name USRPFP
|
||||||
* @author FoxStorm1, Pikai
|
* @author FoxStorm1, Pikai
|
||||||
* @version 1.0.0
|
* @version 1.0.0
|
||||||
* @description A pure CSS database of user requested pfps for discord.
|
* @description A pure CSS database of user requested pfps for discord.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
/* Avatar Import */
|
/* Avatar Import */
|
||||||
@import url('https://raw.githubusercontent.com/Yeetov/USRPFP-Reborn/main/avatarsdatabase.css');
|
@import url("https://raw.githubusercontent.com/Yeetov/USRPFP-Reborn/main/db/dist.css");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue