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:
nexpid 2023-08-29 12:12:01 +02:00 committed by GitHub
parent ea2d738175
commit 5a5d2c2a2b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 288 additions and 377 deletions

39
.github/scripts/convert/index.mjs vendored Normal file
View 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
View 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
View 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
View 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
View 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
View file

@ -0,0 +1,2 @@
avatarsdatabase.css
node_modules

View file

@ -1,41 +1,50 @@
<h1 align="center">USERPFP REBORN</h1>
<p align="center">A theme for having custom Profile Pictures - Continuation by FoxStorm1!</p>
<h1 align="center">
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/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.
- 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.
**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. for [Replugged](https://replugged.dev/) user, Clone the repo
### 2. [Replugged](https://replugged.dev/)
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
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
@import url("https://github.com/Yeetov/USRPFP-Reborn/raw/main/src/dist/source.css");
```
### 4. UserPFP for Android
Only available in [Vencord Android](https://github.com/Vencord/Android/releases)
same steps as Vencord
### 4. USRPFP for Android
### 5. [UserBG](https://github.com/Discord-Custom-Covers/usrbg)
If you also want a custom banner without nitro you have to check [this](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))
## 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>

View file

@ -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
View 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

File diff suppressed because one or more lines are too long

22
db/template.css Normal file
View 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
View file

@ -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");

View file

@ -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%;
}

View file

@ -1,13 +1,9 @@
/**
* @name USERPFP
* @name USRPFP
* @author FoxStorm1, Pikai
* @version 1.0.0
* @description A pure CSS database of user requested pfps for discord.
*/
/* 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");