d480ebc63c
Bumps `ktor` from 2.3.4 to 2.3.9. Updates `io.ktor:ktor-client-content-negotiation` from 2.3.4 to 2.3.9 - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/2.3.9/CHANGELOG.md) - [Commits](https://github.com/ktorio/ktor/compare/2.3.4...2.3.9) Updates `io.ktor:ktor-serialization-kotlinx-json` from 2.3.4 to 2.3.9 - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/2.3.9/CHANGELOG.md) - [Commits](https://github.com/ktorio/ktor/compare/2.3.4...2.3.9) Updates `io.ktor:ktor-server-auth` from 2.3.4 to 2.3.9 - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/2.3.9/CHANGELOG.md) - [Commits](https://github.com/ktorio/ktor/compare/2.3.4...2.3.9) Updates `io.ktor:ktor-server-call-logging` from 2.3.4 to 2.3.9 - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/2.3.9/CHANGELOG.md) - [Commits](https://github.com/ktorio/ktor/compare/2.3.4...2.3.9) Updates `io.ktor:ktor-server-cio` from 2.3.4 to 2.3.9 - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/2.3.9/CHANGELOG.md) - [Commits](https://github.com/ktorio/ktor/compare/2.3.4...2.3.9) Updates `io.ktor:ktor-server-content-negotiation` from 2.3.4 to 2.3.9 - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/2.3.9/CHANGELOG.md) - [Commits](https://github.com/ktorio/ktor/compare/2.3.4...2.3.9) Updates `io.ktor:ktor-server-core` from 2.3.4 to 2.3.9 - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/2.3.9/CHANGELOG.md) - [Commits](https://github.com/ktorio/ktor/compare/2.3.4...2.3.9) Updates `io.ktor:ktor-server-cors` from 2.3.4 to 2.3.9 - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/2.3.9/CHANGELOG.md) - [Commits](https://github.com/ktorio/ktor/compare/2.3.4...2.3.9) Updates `io.ktor:ktor-server-sessions` from 2.3.4 to 2.3.9 - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/2.3.9/CHANGELOG.md) - [Commits](https://github.com/ktorio/ktor/compare/2.3.4...2.3.9) Updates `io.ktor:ktor-server-test-host` from 2.3.4 to 2.3.9 - [Release notes](https://github.com/ktorio/ktor/releases) - [Changelog](https://github.com/ktorio/ktor/blob/2.3.9/CHANGELOG.md) - [Commits](https://github.com/ktorio/ktor/compare/2.3.4...2.3.9) --- updated-dependencies: - dependency-name: io.ktor:ktor-client-content-negotiation dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: io.ktor:ktor-serialization-kotlinx-json dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: io.ktor:ktor-server-auth dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: io.ktor:ktor-server-call-logging dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: io.ktor:ktor-server-cio dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: io.ktor:ktor-server-content-negotiation dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: io.ktor:ktor-server-core dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: io.ktor:ktor-server-cors dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: io.ktor:ktor-server-sessions dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: io.ktor:ktor-server-test-host dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> |
||
---|---|---|
.github | ||
api | ||
app | ||
core | ||
db | ||
gradle | ||
storage | ||
testhelpers | ||
web | ||
.gitignore | ||
build.gradle.kts | ||
docker-compose.yml | ||
Dockerfile | ||
gradlew | ||
gradlew.bat | ||
LICENSE | ||
README.md | ||
settings.gradle.kts |
Twigs Server
This is the backend application that powers the Android, iOS, and web applications for Twigs, a personal finance/budgeting app. None of these apps are complete, so expect bugs, and they are all in various stages of development, so expect some feature disparity between platforms.
Prerequisites
- JDK 14 or newer
- PostgreSQL 13 or newer
- (optional) Docker
Running
Prior to running the app, make sure you have a PostgreSQL server running, with a database and user ready to go. To avoid
the hassle of figuring out how to get it installed locally, using Docker is recommended, and a
sample docker-compose.yml
file is included in the root of the repository. If you already have a PostgreSQL server
running, you can run the app from the command line with gradle:
./gradlew run
Configuration
Some parameters of Twigs can be configured via environment variables:
Environment Variable | Default Value | Note |
---|---|---|
TWIGS_PORT |
8080 |
Port for web server to listen on |
TWIGS_DB_HOST |
localhost |
PostgreSQL server host |
TWIGS_DB_PORT |
5432 |
PostgreSQL server port |
TWIGS_DB_NAME |
twigs |
PostgreSQL database name |
TWIGS_DB_USER |
twigs |
PostgreSQL database user |
TWIGS_DB_PASS |
twigs |
PostgreSQL database password |
TWIGS_PW_SALT |
Salt to use for password, generated if empty or null | |
TWIGS_SMTP_FROM |
From email address for automated emails sent from Twigs | |
TWIGS_SMTP_HOST |
SMTP server host for sending emails | |
TWIGS_SMTP_PORT |
SMTP server port for sending emails | |
TWIGS_SMTP_USER |
SMTP server username for sending emails | |
TWIGS_SMTP_PASS |
SMTP server password for sending emails |
Building
Building the app is also handled with gradle:
./gradlew shadowJar