Application provides some search possibilities for IMDb datasets
The Project already has gradle wrapper (so you don't need to have it installed). It will download all other dependencies.
Web UI page using OMDb API for accessing details of Titles, so, please, make sure you have your own key generated and put it inside imdb-search.js line 31 as apikey parameter
Project doesn't have embedded Neo4j configured for dev purposes, so Docker or installed Neo4j instance is required to work with a project. See docker compose files in docker folder.
take a note that IMDB_DATA system variable should be set to folder where dataset files exists or should be downloaded
- docker contains docker compose files which maps IMDB_DATA directory
- cql contains Cypher scripts that should be used for data import
from my experience scripts run faster if you are using Neo4j browser
- test-datasets contains very small dataset for data import
- prepare_datasets.sh could help with downloading IMDb datasets and preparing them for import
Execute gradle build (It may take a while in the first run):
./gradlew buildAfter the message of BUILD SUCCESS, the application is ready to run:
./gradlew bootRunApplication will be available on http://localhost:8769 (Can be changed in application.yaml).
Open API documentation will be available at http://localhost:8769/api-docs Swagger UI will be available at http://localhost:8769/swagger-ui/index.html
http file contains some examples of REST API calls that could be used for testing
postman collection could be used for REST API calls
- 🧠 Backend
- ☕️ Java 17
- 🍃 Spring Boot
- Web
- Data Neo4j
- Test
- SpringDoc OpenAPI+Swagger
- ⚙️ Misc
- Lombok
- Mapstruct
- 🧪 Tests
- JUnit 5
- Mockito
- Testcontainers
- 💾 Storage
- 🔗 Neo4j
- 🖼️ Frontend
- JQuery
- Bootstrap 4
- Paper Dashboard template official page
- 🏗 Gradle
- 🐳 Docker compose