Giter Site home page Giter Site logo

sudokmaar / threads Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 1.0 141 KB

Threads is a web application that allows users to participate in discussions, interact with communities, and customize their user profiles. It is built using Next.js, React, MongoDB, Tailwind CSS, and other technologies to create a seamless and user-friendly experience.

Home Page: https://threads-kmaar.vercel.app/

TypeScript 92.01% CSS 3.00% JavaScript 4.99%
clerk eslint mongodb mongoose nextjs reactjs tailwindcss threads uploadthing zod

threads's Introduction

Threads

Threads is a web application that allows users to participate in discussions, interact with communities, and customize their user profiles. It is built using Next.js, React, MongoDB, Tailwind CSS, and other technologies to create a seamless and user-friendly experience.

Live Demo of Threads

Table of Contents

Features

  • User Authentication: Users can sign up and log in to the application using Clerk authentication.
  • Create Threads: Users can create new discussion threads and start conversations within communities.
  • Comments: Users can add comments to existing threads to contribute to the discussion.
  • Community Interaction: Users can join communities and participate in discussions within those communities.
  • User Profile: Users can customize their profiles, update their profile pictures, and provide a bio.

Prerequisites

Before running the application, make sure you have the following installed:

  • Node.js (v20 or higher)
  • MongoDB

Getting Started

  1. Clone the repository:
git clone https://github.com/SudoKMaar/threads.git
cd threads-clone
  1. Install dependencies:
npm install
  1. Set up environment variables:

Create a .env.local file in the root directory and add the required environment variables:

NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY= Clerk's public key for client-side authentication.
CLERK_SECRET_KEY= Clerk's secret key for server-side authentication.
NEXT_PUBLIC_CLERK_SIGN_IN_URL= /sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL= /sign-up
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL= /onboarding
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL= /
MONGODB_URL= MongoDB connection URL.

Replace keys with your actual Clerk public key, Clerk secret key, and MongoDB connection URL, respectively.

  1. Start the development server:
npm run dev

The application should now be running on http://localhost:3000.

Technologies Used

  • Next.js: React framework with server-side rendering and static site generation capabilities.
  • React: JavaScript library for building user interfaces.
  • MongoDB: NoSQL database for storing application data.
  • Mongoose: Object Data Modeling (ODM) library for MongoDB and Node.js.
  • Tailwind CSS: Utility-first CSS framework for styling elements.
  • Zod: TypeScript-first schema validation library.
  • Clerk: Authentication and user management service.
  • ESLint: Linter tool for identifying and fixing code errors.
  • UploadThing: Library for handling file uploads.

Contributing

Contributions to Threads Clone are welcome! To contribute, please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix.
  3. Make your changes and commit them.
  4. Push the changes to your fork.
  5. Submit a pull request to the main branch of the original repository.

License

This project is licensed under the MIT License.

Acknowledgements

  • Clerk for providing authentication services.
  • UploadThing for handling file uploads.
  • Next.js for the excellent React framework.
  • Tailwind CSS for the utility-first CSS framework.

threads's People

Contributors

sudokmaar avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.