1.3 KiB
1.3 KiB
ToDo
- year pagination
Authentication
Authentication consists of the following parts:
next-authboilerplatemiddleware.ts= hooks-upnext-authinto the page processing pipeline - user session is checked before any page is renderedauth.ts= defines how the authentication is done, and how session is checked (used by middleware)/app/api/[...nextauth]/route.ts= defines route which shows an authentication form
Source:
- How to Implement Google Authentication in a Next.js App Using NextAuth
- Next Js 14 Authentication on Edge Runtime
Multi-User Support
Each location record is marked with a user ID.
All the actions user withUser to fetch user ID, which is then used in all the DB operations.
Deploying
The deployment is done via Docker:
- build docker image
- deploy Docker service
Building Docker image
Run the following command:
docker build . -t utility-bills-tracker:1.0.0
The image will be stored in the local Docker instance.
Deploying Docker service
Run the following command:
HOSTNAME=0.0.0.0 \
NEXTAUTH_URL=https://rezije.app \
docker stack deploy \
-c docker-compose-deploy.yml \
utility-bills-tracker