A clone of twitter that allows you to tweet, like a tweet, follow people and search for them, change your own profile and delete your profile without leaving a trace anywhere in the app, not even in the database!
This is a T3 Stack project bootstrapped with create-t3-app
.
T3 stack essentially has,
- Typescript to have a better experience working in Javascript land (types make the DX a 100x better, especially inferred types)
- Next.js as the React Framework to create a full stack application
- TailwindCSS for styling
- Prisma as the ORM to connect to the database and manipulate/read data in it
- tRPC for end-to-end typesafe APIs, so that I can make and call my APIs in one place (enables colocation for backend and frontend code)
- Auth.js for authentication (Google Provider only)
- Zod for schema validation
Other Libraries/Tech used are,
- PlanetScale to host the MySQL database
- Cloudinary for image upload (user profile images)
- Pusher to make the app realtime and stream information
- AutoAnimate for some motion/life to the app
- Dayjs to format dates
- Clone the repository
git clone https://github.com/danpiths/t3-twitter-clone.git
- Open a terminal in the cloned folder
- Install required packages
npm install
- copy the
.env.example
to.env
and populate the environment variables from respective sources (all instructions should be clear in.env.example
file) - Synchronise the schema and database
npx prisma db push
- Run the app
npm run dev
To learn more about the T3 Stack, take a look at the following resources:
- Documentation
- Learn the T3 Stack — Check out these awesome tutorials
You can check out the create-t3-app GitHub repository
Follow their deployment guides for Vercel, Netlify and Docker for more information.