Welcome to HammerTime! This is a basic project using gradle, Spring Boot, Thymeleaf, and GitLab CI.
The HammerTime team is committed to creating the ideal interface for renovators, designers, builders, and anyone else intrested in home improvements. We are a passionate team of developers that are dedicated to making home improvement projects more efficient and stress-free.
With HammerTime, you can:
- Stream your renovation journey and share progress in real time.
- Connect through live chat to ask questions, give advice, or cheer others on.
- Support and be supported with community donations.
- Stay organised using a collection of renovation and task tracking features.
Whether you’re here to learn, teach, share, or simply be inspired, HammerTime turns renovations into collaborative adventures.
- SENG302 teaching team
- Julia Clade
- Alex McLauchlan
- Caleb Cooper
- Steven Leishman
- Gordon Homewood
- Jack Kuruvilla
- Finn Brown
- JDK >= 21: Click here to get the latest stable OpenJDK release (as of time of writing)
- Gradle: Download and Install
From the root directory ...
On Linux:
./gradlew bootRun
application-production.properties On Windows:
gradlew bootRun
By default, the application will run on local port 8080 http://localhost:8080/test Our Production environment is at https://seng302.calebcooper.co.nz/
| Username | Password | Role | Authority |
|---|---|---|---|
| jane@example.com | P4$$word | USER | ROLE_CONFIRMED |
| john@example.com | P4$$word | USER | ROLE_CONFIRMED |
| bob@example.com | P4$$word | USER | ROLE_UNCONFIRMED |
To access the HammerTime home page, visit either http://localhost:8080/test/home or http://localhost:8080/test/. From there you can log in or register to start making use of the app!
If you'd rather not run the application locally, you can access the production environment at https://seng302.calebcooper.co.nz/home.
When the application is built using /.gradlew build, all tests are automatically run. To manually run the unit tests for the project, you can open a command line interface in the project directory and run:
./gradlew test- Dropdown menu stays open on resizing window from small to large
Whilst these scripts and files will not be of use until later in the course when you set up continuous integration (CI) we have included files with default behaviour, and some for reference.
deployment-files-fyi/nginx/sites-available.conf- Reference file showing the VMs NGINX config.
deployment-files-fyi/systemd-service/production.service- Reference file showing the production environment service configuration. See here for more information about .service files
deployment-files-fyi/systemd-service/staging.service- Reference file showing the staging environment service configuration.
runner-scripts/production.sh- Deployment shell script for running the production environment on a VM.
runner-scripts/staging.sh- Deployment shell script for running the staging environment on a VM.
.gitlab-ci.yml- The (GitLab specific) CI script for the project. This will cause your pipelines to fail/timeout until gitlab-runners are set up so feel free to ignore these for now. For more information refer to GitLab's Documentation Here
