Files
group-2-threaded-project-pe…/desktop/README.md

49 lines
1.6 KiB
Markdown

# Pet Shop Desktop (JavaFX)
Desktop pet shop management app built with JavaFX and MySQL.
Made by **Group 2**, Shiv, Nikitha, Alex, Harkamal.
## Requirements
- IntelliJ IDEA (Community or Ultimate)
- Java 25+
- Maven (handled through IntelliJ)
- Docker and Docker Compose (for the local MySQL container)
## Database setup (IntelliJ)
1. Open the project in IntelliJ.
2. Open **View → Tool Windows → Services**.
3. Add a Docker connection if needed, then open the **Docker** section in Services.
4. Start the Compose stack from `docker-compose.yml` (Compose Up, or Start).
5. Confirm the `mysql` service is running.
The container uses `mysql:8.4`, creates the `Petstoredb` database, and imports `Petstoredata.sql`.
## App configuration
An example connection file is provided at `connectionpetstore.properties.example`. Copy it to `connectionpetstore.properties` and edit the values to match the local database setup.
## Run the app (IntelliJ, Maven)
1. Open **View → Tool Windows → Maven**.
2. Click **Reload All Maven Projects** if the dependencies have not loaded yet.
3. In the Maven tool window, expand **Plugins → javafx**.
4. Double click **javafx:run**.
Optional, run a clean first:
- In the Maven tool window, expand **Lifecycle** and run **clean**.
## Default accounts
On first run, the app creates a `users` table (if missing) and seeds two accounts:
- Admin: `admin` / `admin123`
- Staff: `staff` / `staff123`
## Notes
- `connectionpetstore.properties` is gitignored so credentials are not committed.
- If the app cannot connect to MySQL, confirm the Compose stack is running and MySQL is available.