Upstash is a serverless data platform that provides serverless Redis, kafka & QStash.
- Those who are already familiar with JavaScript/TypeScript
- Send and receive messages
- Show current connection count
- Create realtime communications with WebSockets
- Use Redis Pub/Sub to communicate across multiple instances
- Use Redis to stop data (connection count/ messages)
- Use Docker and docker-compose to containerize the application
- Docker multi-stage builds
- Use GitHub actions to automate CI/CD
- Graceful shutdowns
- Fastify - Backend
- Websockets - Realtime
- Next.js - Frontend
- Tailwind & Shadcn UI - Styling
- Redis - Pub/Sub
- Docker/docker-compose - Containerization
- GitHub actions - CI/CD
- DigitalOcean - Host the backend
- Vercel - Host the frontend
- Upstash account
- Node.js
- Docker & docker-compose
- An editor - VSCode
- DigitalOcean account
- Vercel account
- Vercel CLI
- GitHub account
- Build backend
- Dockerise backend
- Deploy backend
- Create DigitalOcean droplet
- Configure droplet
- Write github action
- Build frontend
- Deploy frontend
- Make sure you are using
wss://
and notws://
in production - Use debug mode in Caddy server
{
debug
}
- List our running docker containers
docker ps
- Stop a running container
docker stop <container id>
- Remove a container
docker rm <container id>
- List out networks
docker network ls
- Remove a network
docker network rm <network id>