The ultimate free & open source link in bio platform
Create beautiful, organized link pages that drive engagement and grow your audience.
π Live Demo β’ π Documentation β’ π Report Bug β’ π‘ Request Feature
- π 100% Free & Open Source - No hidden fees, no locked features
- β‘ Lightning Fast - Built with Next.js for optimal performance
- π¨ Fully Customizable - Themes, colors, layouts, and animated backgrounds
- π Built-in Analytics - Track clicks, views, and engagement metrics
- ποΈ Organized Sections - Group your links for better organization
- π Privacy-First - GDPR compliant with complete data ownership
- π± Mobile Responsive - Perfect on all devices
- π Secure Authentication - OAuth integration with Google, GitHub, and Discord
- π― Drag & Drop - Intuitive interface for managing links
- π€ Data Export - Download your data anytime in JSON format
- Framework: Next.js 13
- Database: Prisma with MySQL
- Authentication: NextAuth.js
- Styling: Tailwind CSS
- Components: Radix UI
- Animations: Framer Motion
- State Management: Zustand
- Drag & Drop: dnd kit
- Analytics: Recharts
- Node.js 18+
- npm or yarn or bun
- MySQL database
-
Clone the repository
git clone https://github.com/LynkrApp/Website.git cd Website -
Install dependencies
npm install # or yarn install # or bun install
-
Set up environment variables
cp .env.example .env.local
Fill in your environment variables:
# Database DATABASE_URL="mysql://USER:PASSWORD@HOST:PORT/DATABASEr" # NextAuth NEXTAUTH_URL="http://localhost:3000" NEXTAUTH_SECRET="your-secret-key" # OAuth Providers GOOGLE_CLIENT_ID="your-google-client-id" GOOGLE_CLIENT_SECRET="your-google-client-secret" GITHUB_CLIENT_ID="your-github-client-id" GITHUB_CLIENT_SECRET="your-github-client-secret" DISCORD_CLIENT_ID="your-discord-client-id" DISCORD_CLIENT_SECRET="your-discord-client-secret"
-
Set up the database
npx prisma migrate dev npx prisma generate
-
Run the development server
npm run dev # or yarn dev # or bun dev
-
Open your browser Navigate to http://localhost:3000
βββ components/ # Reusable UI components
β βββ core/ # Core application components
β βββ layout/ # Layout components
β βββ meta / # Meta components
β βββ root/ # Root level components (navbar, footer)
β βββ shared/ # Shared components across features
β βββ utils/ # Utility components
βββ hooks/ # Custom React hooks
βββ types/ # All typings
βββ lib/ # Utility libraries and configurations
βββ pages/ # Next.js pages (file-based routing)
β βββ api/ # API routes
β βββ admin/ # Admin dashboard pages
β βββ auth/ # Authentication pages
βββ prisma/ # Database schema and migrations
βββ scripts/ # Database migration scripts
βββ public/ # Static assets
βββ styles/ # Global styles
βββ utils/ # Helper functions
We love contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes
- Run tests:
npm run test - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
We use ESLint and Prettier for code formatting. Run the following commands:
npm run lint # Check for linting errors
npm run lint:fix # Fix linting errorsnpm run dev # Start development server
npm run build # Build for production
npm run start # Start production server
npm run lint # Run ESLint
npm run postinstall # Generate Prisma clientIf you find a bug, please create an issue with:
- Clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Screenshots (if applicable)
- Environment details
We welcome feature requests! Please:
- Check existing issues first
- Describe the feature clearly
- Explain the use case
- Add mockups/examples if helpful
This project is licensed under the AGPL 3 License - see the LICENSE file for details.
- Vercel for hosting
- Prisma for database management
- Radix UI for accessible components
- Lucide for beautiful icons
- All our amazing contributors!
- β Star this repository
- π¦ Follow us on Twitter
- π¬ Join our Discord
- π§ Email us at hello@lynkr.link
- Website: lynkr.link
- Status Page: status.lynkr.link
- Documentation: Coming soon
- API: Coming soon
β Star us on GitHub β’ π¦ Follow on Twitter β’ π¬ Join Discord