Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/meeruzairwashere/threads-clone
Threads Clone: A visually stunning full-stack web app using Next.js, MongoDB, Shadcn UI, TailwindCSS, Clerk, Serverless APIs, React Hook Form, Zod, and TypeScript. It offers robust authentication, threaded discussions, user profiles, and notifications. Admins oversee community-specific threads.
https://github.com/meeruzairwashere/threads-clone
clerk mongodb nextjs react-hook-form shadcn-ui tailwindcss tyepscript uploadthing zod
Last synced: about 2 months ago
JSON representation
Threads Clone: A visually stunning full-stack web app using Next.js, MongoDB, Shadcn UI, TailwindCSS, Clerk, Serverless APIs, React Hook Form, Zod, and TypeScript. It offers robust authentication, threaded discussions, user profiles, and notifications. Admins oversee community-specific threads.
- Host: GitHub
- URL: https://github.com/meeruzairwashere/threads-clone
- Owner: MeerUzairWasHere
- Created: 2024-01-03T08:50:05.000Z (almost 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-24T11:29:34.000Z (2 months ago)
- Last Synced: 2024-10-25T10:39:44.897Z (2 months ago)
- Topics: clerk, mongodb, nextjs, react-hook-form, shadcn-ui, tailwindcss, tyepscript, uploadthing, zod
- Language: TypeScript
- Homepage: https://threads-clone-meeruzairwashere.vercel.app
- Size: 201 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Threads-clone
A sleek platform for threaded discussions
Explore the docs »
View Demo
.
Report Bug
.
Request Feature
## Table Of Contents
* [About the Project](#about-the-project)
* [Built With](#built-with)
* [Getting Started](#getting-started)
* [Prerequisites](#prerequisites)
* [Installation](#installation)
* [Usage](#usage)
* [Roadmap](#roadmap)
* [Contributing](#contributing)
* [License](#license)
* [Authors](#authors)
* [Acknowledgements](#acknowledgements)## About The Project
![Screen Shot](https://res.cloudinary.com/dkozeltxi/image/upload/v1705165530/portfolio/rxrpjgghzvuwp47rvc9b.png)
The Threads Clone is a visually stunning full-stack web application crafted with Next.js, MongoDB, Shadcn UI, TailwindCSS, Clerk, Serverless APIs, React Hook Form, Zod, and TypeScript. It features robust authentication, engaging threaded discussions, nested comments, user profiles, and notifications. Admins can manage community-specific threads and members.
## Built With
* [Next.js 14](https://nextjs.org/)
* [MongoDB](https://www.mongodb.com/)
* [Shadcn UI](https://ui.shadcn.com/)
* [TailwindCSS](https://tailwindcss.com/)
* [Clerk](https://clerk.dev/)
* [React Hook Form](https://react-hook-form.com/)
* [Zod](https://github.com/colinhacks/zod)
* [TypeScript](https://www.typescriptlang.org/)## Getting Started
### Prerequisites
Make sure you have the following installed on your machine:
- Git
- Node.js
- npm (Node Package Manager)## Cloning the Repository
```sh
git clone https://github.com/MeerUzairWasHere/threads-clone
cd threads
```### Installation
Install the project dependencies using npm:
```sh
npm install
```## Set Up Environment Variables
Create a new file named `.env` in the root of your project and add the following content:
```env
MONGODB_URL=
CLERK_SECRET_KEY=
UPLOADTHING_SECRET=
UPLOADTHING_APP_ID=
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
```Replace the placeholder values with your actual credentials. Obtain these credentials by signing up for the corresponding websites on MongoDB, Clerk, and Uploadthing.
## Running the Project
```sh
npm run dev
```Open [http://localhost:3000](http://localhost:3000) in your browser to view the project.
## Usage
**Features**
- **Authentication:**
- Secure user authentication using Clerk for email, password, and social logins (Google and GitHub) with a comprehensive profile management system.- **Visually Appealing Home Page:**
- Engaging home page design showcasing the latest threads for an immersive user experience.- **Create Thread Page:**
- Dedicated page enabling users to easily create threads, fostering community engagement.- **Commenting Feature:**
- Facilitate discussions within threads with a robust commenting feature.- **Nested Commenting:**
- Commenting system with nested threads for a structured and organized conversation flow.- **User Search with Pagination:**
- User-friendly search feature with pagination for convenient exploration and discovery of other users.- **Activity Page:**
- Display notifications on the activity page when someone comments on a user's thread, enhancing user engagement.- **Profile Page:**
- User profile pages for showcasing information and enabling modification of profile settings.- **Figma Design Implementation:**
- Transform Figma designs into a fully functional application with pixel-perfect and responsive design.- **Blazing-Fast Performance:**
- Optimal performance and instantaneous page switching for a seamless user experience.- **Server Side Rendering:**
- Leverage Next.js with Server Side Rendering for enhanced performance and SEO benefits.- **MongoDB with Complex Schemas:**
- Handle complex schemas and multiple data populations using MongoDB.- **File Uploads with UploadThing:**
- Seamless media sharing experience with file uploads using UploadThing.- **Real-Time Events Listening:**
- Stay updated with real-time events listening through webhooks.- **Middleware, API Actions, and Authorization:**
- Robust application security through the use of middleware, API actions, and authorization mechanisms.- **Next.js Layout Route Groups:**
- Utilize new Next.js layout route groups for efficient routing.- **Data Validation with Zod:**
- Ensure data integrity with data validation using Zod.- **Form Management with React Hook Form:**
- Efficiently manage forms with React Hook Form for a streamlined user input experience.## Roadmap
See the [open issues](https://github.com/MeerUzairWasHere/Threads-clone/issues) for a list of proposed features (and known issues).
## Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**.
* If you have suggestions for adding or removing projects, feel free to [open an issue](https://github.com/MeerUzairWasHere/Threads-clone/issues/new) to discuss it, or directly create a pull request after you edit the *README.md* file with necessary changes.
* Please make sure you check your spelling and grammar.
* Create individual PR for each suggestion.
* Please also read through the [Code Of Conduct](https://github.com/MeerUzairWasHere/Threads-clone/blob/main/CODE_OF_CONDUCT.md) before posting your first idea as well.### Creating A Pull Request
1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
## Authors
* [Mir Uzair](https://github.com/MeerUzairWasHere)