Welcome to the connection! This is a modern, full-stack connecting (social network) application built with Next.js, TypeScript, and Tailwind CSS. It provides a platform for users to connect with potential partners in a seamless and engaging way.
- User Authentication: Secure sign-up and login functionality using NextAuth.js.
- User Profiles: Create and customize user profiles with photos and personal information.
- Swiping Interface: A familiar, intuitive swiping mechanism to like or dislike potential matches.
- Real-time Chat: Engage in real-time conversations with matched users.
- Advanced Filtering: Filter potential based on various criteria like age, location, and interests.
- Framework: Next.js - A React framework for building full-stack web applications.
- Language: TypeScript - A typed superset of JavaScript that compiles to plain JavaScript.
- Styling: Tailwind CSS - A utility-first CSS framework for rapid UI development.
- UI Components: Shadcn UI and DaisyUI - for beautiful and accessible UI components.
- Form Management: React Hook Form and Zod for type-safe form validation.
- Authentication: NextAuth.js - for handling user authentication.
- Database: MongoDB with Mongoose for object data modeling.
- File Uploads: UploadThing for easy file uploads.
To get a local copy up and running, follow these simple steps.
Make sure you have bun installed on your machine.
-
Clone the repository:
git clone https://github.com/yasshrai/connection.git cd connection -
Install dependencies:
bun install
-
Set up environment variables: Create a
.env.localfile in the root of your project and add the necessary environment variables.# Example environment variables MONGODB_URI=your_mongodb_connection_string NEXTAUTH_SECRET=your_nextauth_secret NEXTAUTH_URL=http://localhost:3000 UPLOADTHING_SECRET=your_uploadthing_secret UPLOADTHING_APP_ID=your_uploadthing_app_id
-
Run the development server:
bun dev
Open http://localhost:3000 with your browser to see the result.
In the project directory, you can run:
bun dev: Runs the app in development mode.
This application is ready to be deployed on platforms like Vercel or Netlify.