- TypeScript 84.3%
- Kotlin 13%
- JavaScript 2.4%
- Python 0.3%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
Some checks failed
Build Valenced Plugins and Publish / build-and-publish (push) Failing after 16m2s
|
||
| .forgejo/workflows | ||
| .github | ||
| .vscode | ||
| assets/avatars | ||
| docs/superpowers | ||
| gated-repo | ||
| gradle | ||
| plugins | ||
| shared | ||
| types | ||
| valenced-api | ||
| worker | ||
| workers | ||
| .gitignore | ||
| biome.json | ||
| build.gradle.kts | ||
| bun.lock | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| index.json | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
| repo.config.json | ||
| settings.gradle.kts | ||
| tsconfig.base.json | ||
| tsconfig.json | ||
| wrangler.toml | ||
Revenge Next Plugins Monorepo (revenge-next-plugs)
Production monorepo for Revenge Next plugins on Android. This repository contains 32 production-grade client modifications, native Kotlin Android runtime hooks, the Cloudflare Worker distribution registry, and automated Forgejo Actions deployment workflows.
Official Documentation Hub
Comprehensive documentation, API references, and architectural deep-dives are maintained at the official documentation hub:
- Documentation Hub Home
- Revenge Next System Architecture
- Plugins Catalog (Exhaustive Analysis of 32 Plugins)
- Native Kotlin Plugin Development Guide
- TypeScript / Hermes Plugin Development Guide
- Cloudflare Worker
revenge-next-plugs& D1 Registry - CI/CD Pipelines & Shared Actions Guide
- Troubleshooting & Defensive Engineering FAQ
- Community Guides & Unofficial Tutorials
Monorepo Layout
revenge-next-plugs/
+-- plugins/ # 32 production plugins & shared library
| +-- dreamscape/ # Native OpenGL fragment shader worlds
| +-- sparkle/ # Native desktop-style screen pets
| +-- quote/ # Merged Rosie & Benjii Quoter
| +-- you-bar-plus/ # Native & JS YouBar bottom navigation
| +-- cloud-sync/ # Cloud settings & plugins backup engine
| +-- shared/ # Shared TypeScript UI & finder utilities
+-- worker/ # Cloudflare Worker 'revenge-next-plugs' (Hono + D1 SQLite)
+-- .forgejo/workflows/ # Forgejo Actions deploy workflow
+-- .github/scripts/ # Verification & deployment scripts
+-- build.gradle.kts # Root Android Gradle build & D8 desugaring
+-- settings.gradle.kts # Multi-project module discovery
+-- wrangler.toml # Cloudflare Worker configuration
Production Plugins Catalog
| # | Directory | Plugin Name | ID | Archetype | Authors | Description |
|---|---|---|---|---|---|---|
| 1 | auto-quest | Auto Quest | rosie.auto-quest |
Pure TypeScript | Rosie | Automatically completes video Discord quests. |
| 2 | better-inbox | BetterInbox | rosie.better-inbox |
Pure TypeScript | Rosie | Filtered notification tabs for mentions and replies. |
| 3 | checkup | Diagnostics | rosie.checkup |
Native Kotlin | Rosie | Health checks, crash logger, and /plugins command. |
| 4 | client-utils | Client Utils | rosie.client-utils |
Pure TypeScript | Rosie | Client-side slash command registry and Discord utilities. |
| 5 | cloud-sync | CloudSync | rosie.cloud-sync |
Pure TypeScript | Rosie | Cloud backup and synchronization for plugins, themes, and settings. |
| 6 | clyde-editor | Clyde Utils | rosie.clyde-editor |
Pure TypeScript | Rosie | Customizes Clyde identity, avatar, banner, and role colors. |
| 7 | dreamscape | Dreamscape | rosie.dreamscape |
Native Kotlin | Rosie | Custom OpenGL shader backgrounds and web viewport. |
| 8 | emoji-packs | Emoji Packs | rosie.emoji-packs |
Native Kotlin | Rosie | 28 distinct system and custom emoji styles. |
| 9 | file-uploader | File Uploader | rosie.file-uploader |
Pure TypeScript | Rosie | Multi-host file upload engine supporting 18+ services. |
| 10 | font-packs | Font Packs | rosie.font-packs |
Native Kotlin | Rosie | 33 custom typography styles for Discord UI. |
| 11 | global-emojis | Global Emojis | rosie.global-emojis |
Pure TypeScript | Rosie | Global peer-to-peer emoji network across chats. |
| 12 | icon-packs | Icon Packs | rosie.icon-packs |
Native Kotlin | Rosie | System-wide custom iconography replacement packs. |
| 13 | imagestealer | ImageStealer | rosie.imagestealer |
Pure TypeScript | Rosie | Instant extraction of avatars, banners, and stickers. |
| 14 | live-markdown | Live Markdown | rosie.live-markdown |
Native Kotlin | Rosie | Real-time formatted markdown rendering in the chatbox. |
| 15 | more-alts | More Alts | rosie.more-alts |
Pure TypeScript | Rosie | Unlimited account switcher with token management. |
| 16 | pocket-browser | Pocket Browser | rosie.pocket-browser |
Native Kotlin | Rosie | Lightweight in-app web browser viewport. |
| 17 | quote | Quoter | rosie.quote |
Pure TypeScript | Rosie, Benjii | Advanced message quoting and citation engine. |
| 18 | roselib | RoseLib | rosie.roselib |
Native Kotlin | Rosie | Shared native Android utilities and helper runtime. |
| 19 | screen-effects | Screen Effects | rosie.screen-effects |
Native Kotlin | Rosie | Particle simulations, rain, snow, and screen overlays. |
| 20 | sekai-stickers | Sekai Stickers | rosie.sekai-stickers |
Native Kotlin | Rosie | Project Sekai sticker pack injector and picker. |
| 21 | sparkle | Shimeji | rosie.sparkle |
Native Kotlin | Rosie | Interactive desktop-style screen pets walking on Discord. |
| 22 | split-messages | Split Messages | rosie.split-messages |
Pure TypeScript | Rosie | Splits messages exceeding the 2000 character limit. |
| 23 | text-animation | Text Animation | rosie.text-animation |
Native Kotlin | Rosie | Smooth typewriter and cursor animations as you type. |
| 24 | themes | Themes | rosie.themes |
Native Kotlin | Rosie, Contra | System theme manager for colors, fonts, and icons. |
| 25 | tilt-physics | Tilt Physics | rosie.tilt-physics |
Native Kotlin | Rosie | Accelerometer physics engine for UI elements. |
| 26 | toast-api | Toast API | rosie.toast-api |
Pure TypeScript | Rosie, kmmiio99o | Customizable toast notification engine with animations. |
| 27 | typing-styles | Typing Styles | rosie.typing-styles |
Pure TypeScript | Rosie | Maintainer-backed custom typing indicator styles. |
| 28 | ui-tweaks | UI Tweaks | rosie.ui-tweaks |
Pure TypeScript | Rosie | Modular interface toggles and quick action customization. |
| 29 | vencord-tab | Vencord Tab | rosie.vencord-tab |
Native Kotlin | Rosie | Embeds Vencord web client in the emoji sheet. |
| 30 | view-raw | ViewRaw | rosie.view-raw |
Pure TypeScript | Rosie | Inspects and exports raw JSON message payloads. |
| 31 | vodka-themes | VodkaXMartini | rosie.vodka-themes |
Pure TypeScript | Rosie | 15 curated preset themes for the Themes engine. |
| 32 | you-bar-plus | YouBar+ | rosie.you-bar-plus |
Native Kotlin | Rosie, Benjii | Configurable navigation bar with DM & Settings tabs. |
How-To Guides
1. Prerequisites
- Bun: Modern fast JavaScript runtime (
>=1.1.0). - Java Development Kit: JDK 21 or Temurin 25.
- Android SDK: API 36 (
compileSdk = 36) and Build-Tools36.0.0. - Node.js: Node 20+ for supplementary tooling.
2. Building Plugins
Build all TypeScript bundles via @revenge-mod/plugin-cli:
bun run build
Build a single plugin:
bun run build you-bar-plus
Compile Kotlin DEX bytecode and package all 32 plugins into dist/*.zip:
./gradlew packageAllPlugins -PjsTool=bun
3. Serving Locally for Testing
Run the local registry development server:
bun run serve
Forward port 8080 to an Android device over USB ADB:
adb reverse tcp:8080 tcp:8080
In Revenge Settings -> Plugins -> Repositories, add:
http://localhost:8080/index.json
4. Deploying to Cloudflare Worker revenge-next-plugs
Deploy the Hono API, D1 SQLite database, and static plugin ZIP assets:
bunx wrangler deploy
Execute post-deployment verification tests:
bun .github/scripts/verify-deploy.mjs
Live Registry Endpoints
- Stable Registry JSON:
https://next.jarviscli.dev/index.json - Web Directory:
https://next.jarviscli.dev - Admin Management API:
https://next.jarviscli.dev/api/admin/*
Inviolable Engineering Standards
- Lazy Resolution Only: Never resolve
Design,Stores, orReactNativeat root module scope duringpreInit. Doing so permanently poisons on-disk Metro cache (cache.finds). - Deterministic Cleanup: Every hook (
before,after,instead), event listener, interval, and RPC binding must be registered inapi.cleanup(...). - Patcher Arguments: All
beforepatchers must unconditionally return theargsarray. - Clean Codebase Discipline: Zero comments are permitted in any production source or configuration files repo-wide.