Skip to content

Latest commit

 

History

33 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

heat

React TypeScript Socket.IO Prisma Vite

Heat is a real-time message wall built during Rocketseat NLW #7 Heat (October 2021): sign in with GitHub, post messages and watch the feed update live. Two-app monorepo in its original layout.

Apps

App Path Description
API backend-node Express + Prisma (SQLite) REST/Socket.IO API with GitHub OAuth and JWT
Web web-react Vite + React SPA with live message feed

Features

  • GitHub OAuth login (authorization code exchanged server-side for an access token)
  • JWT sessions issued by the API
  • Real-time message feed via Socket.IO
  • Messages persisted through Prisma

Tech stack

Layer Tools
API Node.js, Express 4, Prisma 3 + SQLite, Socket.IO 4, jsonwebtoken, axios
Web React 17, Vite 2, TypeScript, Sass, socket.io-client

How to run

Requirements

Node.js 14-16 era runtime (see legacy note) plus a GitHub OAuth App (client id and secret).

Backend

cd backend-node
yarn install
cp .env.example .env     # set DATABASE_URL, GITHUB_CLIENT_SECRET and related vars
npx prisma migrate deploy
yarn dev:server          # http://localhost:4000

Frontend

cd web-react
yarn install
yarn dev                 # http://localhost:3000

Legacy note

Event project from October 2021 with era-pinned dependencies (Next-free stack: Express 4, Prisma 3, Vite 2). Expect friction on current Node versions without upgrades. Estimated modernization effort if picked up later: small (half-day), bumping dependencies and refreshing the OAuth flow. No fixes are planned as part of this cleanup phase.

License

MIT

Author

Built by Tiago Gonçalves de Castro · LinkedIn

About

Heat: real-time GitHub-authenticated message wall from Rocketseat NLW #7. Express/Prisma/Socket.IO API with a Vite React client.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages