/twitter-at-home

Twitter clone for fun

Primary LanguageTypeScriptMIT LicenseMIT

Twitter At Home

Me: Can I sign up for Twitter?

Mom: We have Twitter at home

Twitter at home:


Just a Twitter clone for fun

Tech Stack

Since this is just for fun, I chose some tech to experiment with that I haven't necessarily used before. Some highlights of the tech stack include:

Development

pnpm

This app uses pnpm instead of npm. Follow the installation instructions for your platform.

nvm

This app requires Node 20. To make it easy, it is recommended to install nvm to make use of the included .nvmrc file. It is also recommended to integrate nvm with your shell so that the correct Node version will be used automatically when changing to the Twitter At Home directory.

docker

The default way to run the app relies on Docker and Docker Compose to easily stand up a Redis database and a Zipkin instance for OpenTelemetry data.

Running the app

With the prerequisites out of the way, running the app for local development is as simple running a few commands from the root directory.

pnpm i && pnpm i -C ui && pnpm i -C api
pnpm start

is will restore all of the dependencies and then run the UI, the backend, the Redis database, and the Zipkin instance.

The app will be accessible on localhost:3000 and Zipkin on localhost:9411.