A simple ToDo app created for the academic course with aim of creating an app with frontend, backend and database. It has support for Https, PWA and is using reverse proxy.
- I use RSA private and public keys to sign jwt tokens so you need to generate them.
- Use the commands below to generate private key and create public key:
openssl genpkey -algorithm RSA -out private.pem -pkeyopt rsa_keygen_bits:4096
openssl rsa -pubout -in private.pem -out public.pem
- Place them inside
todo-app-backend/src/resources/*.pem
- Application is using
ssl
so you need appropriate certificates. Intodo-app-nginx/ssl
there is a scriptgen.sh
developed by me and my friend Igor. When you use it you should haveserver.crt
,server.key
andserver.p12
. First two should be placed intodo-app-frontend/src/assets/ssl/
andtodo-app-nginx/ssl/
andserver.p12
intodo-app-backend/src/main/resources/
. You can modify particular values in scripts variables.
- Frontend
- Angular 16.2.0,
- Angular PWA,
- TypeScript 5.1.3,
- Angular Material 16.2.8,
- Scss 0.2.4,
- Rxjs 7.8.0,
- Html 5.
- Backend
- Java 17,
- Spring Boot 3.14,
- Spring Data JPA,
- OAuth2,
- Jwt,
- Gradle Groovy,
- PostgreSQL,
- MapStruct,
- Lombok.
- Others
- Docker,
- Nginx,
- Drawio.
- Architecture diagram:
- Database:
- Login
- Register
- Forgot password
- Groups
- Side Menu
- Profile
- Collaborators
- Search
- Tasks
- Sessions
- Add socials