Skip to content

A full-stack Twitter clone built with Next.js, React Query, Prisma, PostgreSQL, and Supabase

License

Notifications You must be signed in to change notification settings

sherrbss/Chirp

 
 

Repository files navigation

Chirp

Chirp

A full-stack Twitter clone
built with Next.js, React Query,
Prisma, PostgreSQL, and Supabase.


Demo

Chirp in action


Features

Chirp users can:

  • 📱 View the optimal layout for the interface depending on their device's screen size
  • 🎨 Tailor the interface to their preferences with custom themes and colors
  • 🔑 Sign in with Google
  • 🎨 Customize profile (upload profile and banner images, change name, add description, location, and website)
  • 👀 See what other users are tweeting about and inspect their activity such as likes, retweets, and comments.
  • 📷 Share their moments - create and upload tweets with up to 4 images.
  • 💬 Engage in conversation by replying to tweets
  • ❤️ Give their approval with a like, or take it back
  • 🔄 Retweet and quote tweets - Share a tweet with their followers by retweeting or quote it with their own thoughts and comments.
  • 🔖 Save tweets for later and organize them with bookmarks
  • 🔥 View trending hashtags and create their own by including them in their tweets
  • 👥 Discover and follow other users, as well as inspect their profiles and tweets.
  • 📩 Send and receive direct messages

Development workflow

Chirp uses yarn as a package manager, so make sure to install it first.

git clone git@github.com:davitJabushanuri/Chirp.git
cd Chirp
yarn install
yarn dev

Environment Variables

Before running the development server, make sure to create .env and .env.local files in the root directory of the project and add the required environment variables. You can use the examples provided in the repository as a starting point: .env.example and .env.local.example.

cp .env.example .env
cp .env.local.example .env.local

Prisma

Chirp uses Prisma as an ORM to interact with the database. Before running the development server, make sure to generate the Prisma client by running:

yarn prisma generate

After generating the Prisma client, make sure to also push any changes to the database schema by running:

yarn prisma db push

This ensures that the local database is up-to-date with any changes made to the schema in the codebase.

Contributing

License

Chirp is licensed under the MIT License.

About

A full-stack Twitter clone built with Next.js, React Query, Prisma, PostgreSQL, and Supabase

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 63.9%
  • SCSS 24.1%
  • JavaScript 11.9%
  • Other 0.1%