PayMyBuddy enables the sharing of real world currency between users in a simple, fast, and secure manner.
- PostgreSQL: SQL database.
- SQLx: Simple SQL migration.
- Gradle: Integrated build tool with
gradlew. - Java >=21.
- Spring boot: Configure a Spring project.
- Thymeleaf: Java templating engine.
- TailwindCSS: CSS framework.
There are 2 different way to run this application:
Run the tests using:
./gradlew testRun the mutation tests using:
./gradlew pitestBuild the application as an uber JAR (a JAR containing all of its dependencies) using:
./gradlew bootJar
java -jar build/**.jar # RunRun the application using:
cp .env.CHANGEME .env
# Edit the `DATABASE_**` variables to match your PostgreSQL instance
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # Install Rust, used to install the migration tool
cargo install sqlx-cli
sqlx database setup
./gradlew bootRunYou can run the application using an OCI compliant container engine (like Docker or Podman) that supports the compose specification.
# Using Docker
docker-compose up -d
# Using Podman
podman-compose up -dThis application was tested on a Linux machine (Ubuntu 24.10 x86_64).


