A modern link shortener and redirect management system built with Next.js 14, Prisma, and TypeScript.
Caution
ByteBrush Links is not yet ready for production use and is only public at this stage for transparency. Please check back in a few days for an official release :D
- ⚡️ Create and manage shortened links with custom slugs
- 🎨 Customizable OpenGraph metadata for social media sharing
- 📈 Track link visits and analytics
- 🔒 Secure authentication system with role-based access control
- 🌐 Database-driven configuration system
- 🎭 Beautiful UI with Framer Motion animations
- 📱 Fully responsive design for all devices
- 🌙 Dark mode by default
- Framework: Next.js 14 (App Router)
- Database: PostgreSQL with Prisma ORM
- Authentication: NextAuth.js
- Styling: Tailwind CSS
- UI Components: Custom components with Radix UI primitives
- Animations: Framer Motion
- Form Validation: Zod
- Icons: Lucide React
- Node.js 18+ and npm/yarn/pnpm
- PostgreSQL database
-
Clone the repository:
git clone https://github.com/yourusername/bblinks.git cd bblinks -
Install dependencies:
npm install # or yarn install # or pnpm install
-
Set up environment variables by creating a
.envfile:DATABASE_URL="postgresql://username:password@localhost:5432/bblinks" NEXTAUTH_SECRET="your-secret-key" NEXTAUTH_URL="http://localhost:3000" INITIAL_ADMIN_EMAIL="[email protected]" INITIAL_ADMIN_PASSWORD="securepassword" -
Run database migrations:
npx prisma migrate dev
-
Seed the database:
npx prisma db seed
-
Start the development server:
npm run dev # or yarn dev # or pnpm dev
-
Open http://localhost:3000 in your browser.
/app- Next.js App Router pages and layouts/components- Reusable UI components/hooks- Custom React hooks/lib- Utility functions and configuration/prisma- Prisma schema and migrations/public- Static assets
ByteBrush Links uses a database-driven configuration system that allows you to customize the application without changing code. All settings are stored in the database and can be managed through the admin interface:
- Site name and branding
- Domain settings
- Access controls
- UI appearance
- Default link behavior
- User: Can create and manage their own links
- Admin: Can manage all links and users
- Superadmin: Full access to all features and settings
Important
For support, feature requests, or bug reports, please:
- Check the GitHub Issues
- Join our Discord Server
- Email us [email protected]
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). This means:
- You can use, modify, and distribute this software
- If you modify the software, you must disclose the source code
- If you run a modified version on a server and allow users to interact with it, you must make your modifications available
- Any derivative work must also be licensed under AGPL-3.0
- Next.js - The React framework used
- Prisma - ORM for database access
- NextAuth.js - Authentication library
- Tailwind CSS - CSS framework
For more details, see the LICENSE file or visit the AGPL-3.0 license page.
Created with ❤️ by ByteBrush Studios
