To run this project go to its root directory and them execute the following steps:
- Start docker containers
docker-compose up
- Go to http://127.0.0.1:7474/browser/ to check if it's up
- If this is the first time you're running the project. Configure your database
./scripts/configure_db.sh
- Start web server
./gradlew run
- Create .env/config.yml file to keep all configurations (e.g: Neo4J username and password)
- Spring Neo4J Data doesn't work with OffsetDateTime but with LocalDateTime. So we're storing date time without timezones for now
- Improve Neo4J error handling. Return custom error type
- Use liquigraph to create Neo4J constrains
- Use @Async at Neo4J repositories
- Implement pagination, sort and filters
- Implement authentication and authorization with KeyCloak and Spring Security
- Unit tests