Welcome to the exciting world of the Book Tracker web application, developed using Spring Boot and React (Typescript). This guide will take you step-by-step through the process of setting it up locally on your machine.
Getting Started Locally
Before diving into the installation process, ensure that you have the following prerequisites ready to make your journey smooth:
- Docker with Buildkit enabled
- Windows or macOS: Install Docker Desktop
- Linux: Install Docker Engine and Docker Compose. Follow the post installation guide to add your user to the Docker group.
Step-by-Step Setup
- Clone the repository. If you’re contributing, you’ll need to fork the repository and then clone your fork.
- Start Docker engine (Linux) or Docker desktop (macOS or Windows).
- If you’re on an Apple silicon chip (e.g., M1), remember to uncomment this line.
- In the root of the project, run docker-compose build to build the database, backend, and frontend services.
- Run docker-compose –env-file .env up to start the containers.
- Once the development server has started, access the frontend by going to localhost:3000 in your web browser.
- When finished, run docker-compose down to stop and remove the containers.
If you wish, you can also run our Books API to avoid errors on the search page of the frontend.
Logging In
When running both the frontend and backend (or just the backend), you can log in using the following credentials:
- Email address: user@user.user
- Password: password
Note: If you’re running the backend, a JWT token will be necessary for subsequent requests after logging in or creating an account. More details can be found on the connecting to the backend wiki page.
Accessing the Database (Optional)
If you’d like to access the database using your favorite SQL client, use the following settings:
- Host: localhost
- Port: 5433
- User: dbuser
- Password: dbpassword
- Database name: book_project_db
For example, in DataGrip or IntelliJ Ultimate:
Host: localhost
Port: 5433
User: dbuser
Password: dbpassword
Database name: book_project_db
Troubleshooting
Here are some troubleshooting tips you may find useful:
- If you encounter Lombok errors, especially related to log statements or missing constructors, visit our troubleshooting page for specific instructions for IntelliJ and Eclipse.
- Windows users may notice the Vmmem process consuming too much CPU and RAM. You can adjust the resource limits by going to Docker Desktop > Settings > Resources. If you are using the WSL 2 backend, create a .wslconfig file in your user folder with these settings:
[wsl2]
memory=4GB # Limits VM memory in WSL 2 up to 4GB
processors=2 # Makes the WSL 2 VM use two virtual processors
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
Contributing
If you wish to contribute, we appreciate your help! Please refer to our contributing document for guidelines.
Wrapping Up
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

