- Node.js 18 or later
- JDK 17
Specify backend url in
client/.envVITE_BACK_DOMAIN=https://example.com
- Run gradle task customDistZip
$ ./gradlew customDistZip
- Take the compiled distribution from
server/build/distributions
Configure following things in config.json
- secret — string used for generating email confirmation codes
- database
- url — JDBC connection string
- driver — for now only
org.postgresql.Driveris supported - user — username used to connect to the database
- password — password used to connect to the database
- jwt
- email
- host — domain name of smtp server
- port — port of smtp server
- login — email used for outgoing messages
- password - smtp server password
- templates
- emailConfirmationTemplate — html template for an email confirmation message, supported
variables:
$name$,$username$,$confirmation$,$userId$,$email$
- emailConfirmationTemplate — html template for an email confirmation message, supported
variables:
- storage
- attachments — directory where uploaded attachments will be stored
- wwwRoot — directory where SPA is stored
To configure HTTPS, use the following command line arguments:
-sslPort=<port>
-sslKeyStore=<path to jks keystore>
-P:ktor.security.ssl.keyAlias=<alias in jks keystore>
-P:ktor.security.ssl.keyStorePassword=<keystore password>
-P:ktor.security.ssl.privateKeyPassword=<private key password>
Use Gradle Task test
$ ./gradlew test