Simple messaging app built on a Next.js frontend with an Express backend and a SQLite database, using Github authentication services (OAuth Apps)
This project was a great introduction to the world of third-party auth providers, as well as a huge help to familiarize myself with a simple potential login/logout user flow in a React application. Learned a lot of do's and dont's when it comes to access tokens. HttpOnly cookies for the win!
Tech Stack:
- Typescript
- Express.js
- Next.js (React)
- Tailwind CSS
- SQLite
Lessons learned:
- Should have used React Query 😅
- Run
install.bat
or
- Run
npm run install-link
inshared/
- Run
npm run install-link
infrontend/
andbackend/
There must exist an .env
file in backend/
with the following properties:
CLIENT_ID
- Github OAuth app client ID (see Resources)CLIENT_SECRET
- Github OAuth app client secret (see Resources)
- Run
dev.bat /ob
or
- Run
npm run dev
inbackend/
,frontend/
andshared/
- Open up http://localhost:3000