Generate fast, beautiful and consistent embeddable cards and badges for Modrinth, CurseForge, Hangar and Spigot content.
🚀 Quick Start
Use the Website to visually configure and preview your embeds. The api docs can be found at here.
Examples:
🔗 Endpoints
Base URL: https://modfolio.creeperkatze.de
Pattern: /<platform>/<entity-type>/<identifier>?<option>=<value>
Cards
Rich cards showing stats, versions, projects, and activity sparklines.
Modrinth
| Card Type | Path | Example |
|---|---|---|
| Project | /modrinth/project/<slug> |
|
| User | /modrinth/user/<username> |
|
| Organization | /modrinth/organization/<slug> |
|
| Collection | /modrinth/collection/<id> |
CurseForge
| Card Type | Path | Example |
|---|---|---|
| Project | /curseforge/project/<id> |
|
| User | /curseforge/user/<id> |
Hangar
| Card Type | Path | Example |
|---|---|---|
| Project | /hangar/project/<slug> |
|
| User | /hangar/user/<username> |
Spigot
| Card Type | Path | Example |
|---|---|---|
| Resource | /spigot/resource/<id> |
|
| Author | /spigot/author/<id> |
Card Options
| Parameter | Description | Default |
|---|---|---|
color |
Accent color (hex) | Platform default |
backgroundColor |
Background color (hex) | transparent |
showProjects |
Show top projects section | true |
showVersions |
Show versions section | true |
maxProjects |
Max projects to display (1-10) | 5 |
maxVersions |
Max versions to display (1-10) | 5 |
relativeTime |
Show relative time for dates | true |
showSparklines |
Display activity sparklines | true |
showDownloadBars |
Display download bars | true |
showBorder |
Show card border | true |
showSummary |
Show description/bio text | false |
animations |
Enable animations | true |
format |
Output format (svg / png) |
svg |
projectType |
Filter projects by type (Modrinth: mod, plugin, datapack, etc. CurseForge: class ID) |
null |
Platform defaults: Modrinth #1bd96a | CurseForge #F16436 | Hangar #3371ED | Spigot #E8A838
Badges
Pattern: /<platform>/<entity-type>/<identifier>/<metric>?<option>=<value>
Compact badges showing a single metric.
Modrinth
| Badge | Path | Example |
|---|---|---|
| Downloads | /modrinth/<type>/<id>/downloads |
|
| Followers | /modrinth/<type>/<id>/followers |
|
| Versions | /modrinth/<type>/<id>/versions |
|
| Projects | /modrinth/<type>/<id>/projects |
CurseForge
Hangar
Spigot
Badge Options
| Parameter | Description | Default |
|---|---|---|
color |
Accent color (hex) | Platform default |
backgroundColor |
Background color (hex) | transparent |
showIcon |
Show the platform icon | true |
showBorder |
Show badge border | true |
format |
Output format (svg / png) |
svg |
Platform Defaults
| Platform | Accent color (hex) |
|---|---|
| Modrinth | #1bd96a |
| CurseForge | #F16436 |
| Hangar | #3371ED |
| Spigot | #E8A838 |
👨💻 Development
Prequisites
- Node.js
- pnpm
Installation
# Clone the repository git clone https://github.com/creeperkatze/modfolio.git cd modfolio # Install dependencies pnpm install # Start development server pnpm dev
Environment Variables
Copy apps/backend/.env.example and rename it to apps/backend/.env.
🌐 Translating
Translations are managed on Crowdin. You can contribute without any technical knowledge, just pick your language and start translating.
New translations are automatically pulled every Monday.
Contributors ❤️
| Language | Translators |
|---|---|
| Italian | emanuelplaysofficial |
🤝 Contributing
Contributions are always welcome!
Please ensure you run pnpm lint before opening a pull request.
📜 License
AGPL-3.0
