Skip to content

LynkrApp/Website

Repository files navigation

Lynkr Logo

Lynkr

The ultimate free & open source link in bio platform

Create beautiful, organized link pages that drive engagement and grow your audience.

GitHub Stars GitHub Issues GitHub License Discord

🌐 Live Demo📖 Documentation🐛 Report Bug💡 Request Feature


✨ Features

  • 🆓 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

🛠️ Tech Stack

🏃‍♂️ Getting Started

Prerequisites

  • Node.js 18+
  • npm or yarn or bun
  • Mongoose database

Installation

  1. Clone the repository

    git clone https://github.com/LynkrApp/Website.git
    cd Website
  2. Install dependencies

    npm install
    # or
    yarn install
    # or
    bun install
  3. Set up environment variables

    cp .env.example .env.local

    Fill in your environment variables:

    # Database
    DATABASE_URL="mongodb://username:password@localhost:27017/lynkr"
    
    # 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"
  4. Set up the database

    npx prisma migrate dev
    npx prisma generate
  5. Run the development server

    npm run dev
    # or
    yarn dev
    # or
    bun dev
  6. Open your browser Navigate to http://localhost:3000

📁 Project Structure

├── components/          # Reusable UI components
│   ├── core/           # Core application components
│   ├── layout/         # Layout components
│   ├── root/           # Root level components (navbar, footer)
│   ├── shared/         # Shared components across features
│   └── utils/          # Utility components
├── hooks/              # Custom React hooks
├── 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
├── public/             # Static assets
├── styles/             # Global styles
└── utils/              # Helper functions

🤝 Contributing

We love contributions! Please see our Contributing Guide for details.

Development Workflow

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes
  4. Run tests: npm run test
  5. Commit your changes: git commit -m 'Add amazing feature'
  6. Push to the branch: git push origin feature/amazing-feature
  7. Open a Pull Request

Code Style

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 errors

📜 Scripts

npm 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 client

🐛 Bug Reports

If 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

💡 Feature Requests

We welcome feature requests! Please:

  • Check existing issues first
  • Describe the feature clearly
  • Explain the use case
  • Add mockups/examples if helpful

📄 License

This project is licensed under the AGPL 3 License - see the LICENSE file for details.

🙏 Acknowledgments

  • Vercel for hosting
  • Prisma for database management
  • Radix UI for accessible components
  • Lucide for beautiful icons
  • All our amazing contributors!

🌟 Support

📊 Status


About

The ultimate free & open source link in bio platform

Resources

License

Stars

Watchers

Forks