[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-8848":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":16,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":17,"rankGlobal":10,"rankLanguage":10,"license":18,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":10,"pushedAt":10,"updatedAt":28,"readmeContent":29,"aiSummary":30,"trendingCount":16,"starSnapshotCount":16,"syncStatus":31,"lastSyncTime":32,"discoverSource":33},8848,"for-the-badge","andrewsbarbaro\u002Ffor-the-badge","andrewsbarbaro","It all started because of an obsession with two words: “build passing”. It all ended with this: badges, for badges’ sake.","https:\u002F\u002Fforthebadge.com",null,"Vue",1809,145,27,1,0,19.49,"MIT License",false,"master",true,[23,24,25,26,27],"badges","badges-generator","badges-github","forthebadge","svg","2026-06-12 02:01:59","# For the Badge\n\n[![Built with Nuxt](https:\u002F\u002Fforthebadge.com\u002Fapi\u002Fbadges\u002Fgenerate?primaryLabel=BUILT%20WITH&secondaryLabel=NUXT&primaryBGColor=%2331C4F3&secondaryBGColor=%2300DC82)](https:\u002F\u002Fnuxt.com)\n[![Deployed on Cloudflare](https:\u002F\u002Fforthebadge.com\u002Fapi\u002Fbadges\u002Fgenerate?primaryLabel=DEPLOYED%20ON&secondaryLabel=CLOUDFLARE&primaryBGColor=%23F38020&secondaryBGColor=%23E16A10)](https:\u002F\u002Fworkers.cloudflare.com)\n[![License: MIT](https:\u002F\u002Fforthebadge.com\u002Fapi\u002Fbadges\u002Fgenerate?primaryLabel=LICENSE&secondaryLabel=MIT&primaryBGColor=%23F0C419&secondaryBGColor=%23D4A017)](https:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT)\n[![Open Collective](https:\u002F\u002Fforthebadge.com\u002Fapi\u002Fbadges\u002Fgenerate?primaryLabel=OPEN%20COLLECTIVE&secondaryLabel=SUPPORT%20US&primaryBGColor=%237FADF2&secondaryBGColor=%235D8ED8)](https:\u002F\u002Fopencollective.com\u002Fforthebadge)\n\n**Badges for badges' sake.**\n\n🌐 **Live Site:** [forthebadge.com](https:\u002F\u002Fforthebadge.com)\n\n## Features\n\n- 🎨 **Custom Badge Creator** - Design badges with custom text, colors, and icons\n- 📦 **Pre-made Badges** - Browse a library of ready-to-use badges\n- 🏆 **Developer Awards** - Earn and display achievement badges\n- 👤 **User Accounts** - Save and manage your badge collections\n- 🔗 **Easy Sharing** - Copy badge URLs or download as images\n\n## Tech Stack\n\n- **Framework:** [Nuxt 4](https:\u002F\u002Fnuxt.com) (Vue 3)\n- **Deployment:** [Cloudflare Workers](https:\u002F\u002Fworkers.cloudflare.com) via [NuxtHub](https:\u002F\u002Fhub.nuxt.com)\n- **Database:** [Cloudflare D1](https:\u002F\u002Fdevelopers.cloudflare.com\u002Fd1\u002F) (SQLite)\n- **KV Storage:** [Cloudflare KV](https:\u002F\u002Fdevelopers.cloudflare.com\u002Fkv\u002F)\n- **ORM:** [Drizzle ORM](https:\u002F\u002Form.drizzle.team)\n- **Auth:** [nuxt-auth-utils](https:\u002F\u002Fgithub.com\u002FAtinux\u002Fnuxt-auth-utils)\n- **Security:** [nuxt-security](https:\u002F\u002Fnuxt-security.vercel.app)\n\n## Getting Started\n\n### Prerequisites\n\n- [Node.js](https:\u002F\u002Fnodejs.org\u002F) 22+\n- [Yarn](https:\u002F\u002Fyarnpkg.com\u002F) (via Corepack)\n- [Wrangler CLI](https:\u002F\u002Fdevelopers.cloudflare.com\u002Fworkers\u002Fwrangler\u002F) (for Cloudflare deployment)\n\n### Installation\n\n```bash\n# Enable Corepack for Yarn\ncorepack enable\n\n# Clone the repository\ngit clone https:\u002F\u002Fgithub.com\u002Fforthebadge\u002Ffor-the-badge.git\ncd for-the-badge\n\n# Install dependencies\nyarn install\n\n# Copy environment variables\ncp .env.example .env\n# Edit .env with your values\n```\n\n### Development\n\n```bash\n# Start development server\nyarn dev\n```\n\nThe app will be available at `http:\u002F\u002Flocalhost:3000`.\n\n### Building\n\n```bash\n# Build for production\nyarn build\n\n# Preview production build locally\nyarn preview\n```\n\n## Configuration\n\n### Environment Variables\n\nSee [`.env.example`](.env.example) for all available configuration options.\n\n**Required variables:**\n- `NUXT_SESSION_PASSWORD` - Session encryption password\n- `PASSWORD_PEPPER` - Additional password hashing security\n- `ACCOUNT_HMAC_SECRET` - HMAC secret for account operations\n- `BADGE_ENCRYPTION_KEY` - Encryption key for badge data\n- `REFERRAL_SQIDS_ALPHABET` - Alphabet for generating referral IDs\n\n### Cloudflare Setup\n\n1. Create a D1 database:\n   ```bash\n   wrangler d1 create forthebadge\n   ```\n\n2. Create a KV namespace:\n   ```bash\n   wrangler kv:namespace create KV\n   ```\n\n3. Update `wrangler.jsonc` with your database and KV IDs\n\n4. Set secrets:\n   ```bash\n   wrangler secret put NUXT_SESSION_PASSWORD\n   wrangler secret put PASSWORD_PEPPER\n   wrangler secret put ACCOUNT_HMAC_SECRET\n   wrangler secret put BADGE_ENCRYPTION_KEY\n   wrangler secret put REFERRAL_SQIDS_ALPHABET\n   ```\n\n## Scripts\n\n| Command | Description |\n|---------|-------------|\n| `yarn dev` | Start development server |\n| `yarn build` | Build for production |\n| `yarn preview` | Preview production build |\n| `yarn test` | Run tests |\n| `yarn test:coverage` | Run tests with coverage |\n| `yarn db:generate` | Generate database migrations |\n| `yarn security:check` | Run security audits |\n\n## Contributing\n\nWe welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\n\n## Security\n\nFor security concerns, please see [SECURITY.md](SECURITY.md).\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Support\n\nIf you find For the Badge useful, consider supporting us on [Open Collective](https:\u002F\u002Fopencollective.com\u002Fforthebadge).\n\n## Acknowledgments\n\n- Original [For the Badge](https:\u002F\u002Fforthebadge.com) concept\n- All our [contributors](https:\u002F\u002Fgithub.com\u002Fforthebadge\u002Ffor-the-badge\u002Fgraphs\u002Fcontributors)\n- The Nuxt and Cloudflare communities\n","For the Badge 是一个用于创建和分享自定义徽章的在线平台。其核心功能包括自定义徽章设计、预设徽章库、开发者成就展示以及用户账户管理，支持轻松分享徽章链接或下载为图片。技术上，该项目基于 Vue 3 和 Nuxt 4 框架构建，部署在 Cloudflare Workers 上，并使用 Cloudflare D1 和 KV 存储数据。适合需要个性化徽章以增强项目文档、个人网站或社交媒体资料吸引力的开发者及设计师使用。",2,"2026-06-11 03:20:01","top_language"]