Detailed description
Backend
- Design of layers architecture (controllers, services, repositories, etc.)
- Separated usage of DTOs and entities for better separation of concerns
- Third party integration services for storing files, databases and email services, using
Cloudinary
,Neon
andGoogle
- Security of the data through
Spring Security
, through the use ofJWT
and encryption withsha256
- Usage of
Spring Boot
for building RESTful services
Frontend
- Based on
Angular
modules isolated by roles and permissions - Stylized with
Tailwind CSS
andDaisyUI
- Design of the user experience to be responsive and simple for users
- Dashboard with
ApexCharts
for the visualization of the data
Database
- Database
PostgreSQL
used for storing the data of users, journals and publications - The database is located in
Neon
Deployment
Docker
for building container imagesArtifact Registry
for storing the Docker imagesGoogle Cloud Run
for the deployment of the Docker images in the cloud in the production environment and development environment- Continuous integration with
GitHub Actions
for running unit tests and coverage reports - Continuous delivery/deployment with
GitHub Actions
for building Docker images and deploying Docker images in the cloud