This repository contains the back-end code for the personal finance application I'm working on.
To start developing for this repository, follow these steps:
-
Clone the repository.
-
Make sure you've installed the Rust toolchain.
-
Install the sqlx-cli using cargo.
-
Generate a key file for the JWT signatures using:
ssh-keygen -t rsa -b 4096 -m PEM -f jwtRS256.key
-
Make sure you're running a Postgres database (you can use the
docker-compose.yaml
for this) -
Create an
.env
file using the.env.example
file and update the values accordingly. -
Create the database using:
sqlx database create
-
Make sure to run the migrations during development using:
sqlx migrate run
-
Start the application using:
cargo run
The application is build into a docker image for development of the Ledgero-UI and for deploying to production. To build
a docker image, run the build-images.sh
script.
Deploying a production build is done using the docker image:
- First, make sure the Postgres database is up.
- Create an
.env
file using the.env.example
file and update the values accordingly. - Pull and run the docker image. The application will automatically run all required migrations on the database.