Skip to content

LINK NEST - A collection of all social media links in one place.

Notifications You must be signed in to change notification settings

riteshk-007/LinkNest

Repository files navigation

LinkNest

Vercel

image

LinkNest is a powerful and modern web application built with Next.js, designed to efficiently manage and organize your links. This project leverages cutting-edge technologies such as Prisma, Apollo Client, and Tailwind CSS to provide a seamless and robust user experience.

12th.mp4

Live Demo

Check out the live application: LinkNest Live

image

Features

  • User Authentication: Secure user authentication with NextAuth.
  • GraphQL API: Efficient data fetching with Apollo Client and Server.
  • Prisma ORM: Powerful database management using Prisma.
  • Responsive UI: Modern and responsive design using Tailwind CSS.
  • Form Validation: Robust form handling with React Hook Form.

image

Technologies Used

  • Next.js: React framework for server-side rendering and static site generation.
  • React: A JavaScript library for building user interfaces.
  • Apollo Client & Server: Comprehensive state management library for GraphQL.
  • Prisma: Next-generation ORM for Node.js and TypeScript.
  • Tailwind CSS: Utility-first CSS framework for rapid UI development.
  • Shadcn UI: Primitives for building accessible and customizable UI components.
  • React Hook Form: Performant, flexible, and extensible forms with easy-to-use validation.
  • Framer Motion: Production-ready animation library for React.
  • NextAuth: Complete open-source authentication solution for Next.js.
  • bcryptjs: Library to hash passwords.
  • Micro: Minimalist microservices framework.
  • TypeScript: Typed JavaScript at Any Scale.

image

Getting Started

Prerequisites

  • Node.js
  • npm or yarn
  • MongoDB

image

Installation

  1. Clone the repository:

    git clone https://github.com/riteshk-007/LinkNest.git
    cd LinkNest
  2. Install dependencies:

    npm install

image image

  1. Set up your environment variables. Create a .env.local file in the root directory and add the following variables:

    DATABASE_URL="mongodb url"
    NEXTAUTH_SECRET="secret"
    NEXT_PUBLIC_BASE_URL="http://localhost:3000"
    UPLOADTHING_SECRET=upload thing url
    UPLOADTHING_APP_ID=upload thing Id
    NEXT_PUBLIC_RAZORPAY_KEY_ID=razorpay key
    NEXT_PUBLIC_RAZORPAY_KEY_SECRET=razorpay secret
  2. Run the development server:

    npm run dev

image

  1. Open http://localhost:3000 with your browser to see the result.

Build for Production

To create an optimized production build, run:

npm run build

Then, start the production server:

npm start

Scripts

  • dev: Runs the app in development mode.
  • build: Generates Prisma client and creates an optimized production build.
  • start: Starts the production server.
  • lint: Lints the codebase.

Contact

image

For more information or inquiries, feel free to reach out via my portfolio: Ritesh Kumar's Portfolio

License

This project is licensed under the MIT License. See the LICENSE file for details.

image

Acknowledgements

Special thanks to the maintainers of the various open-source libraries and tools used in this project.