Warning
This project is still in development so expect breaking changes!
kalmia-demo-fin.mp4
Kalmia is a Go tool with a web interface for managing RsPress documentation. It supports multiple versions, multiple users, and includes a markdown editor for easy edits. Please visit our website for more information on how to use Kalmia and its features.
- Go >= 1.22
- Node.js (version v20.15.0 or later)
- npm (usually comes with Node.js)
- PostgreSQL >= 15 (If you're not using SQLite)
You can download from releases, our website or even clone the repository:
git clone https://github.com/DifuseHQ/kalmia.git
cd kalmia
Kalmia uses a Makefile to manage build processes. Here are the main commands:
- Build everything (including dependencies):
make all
- Install dependencies (including building the web application):
make deps
- Run tests:
make test
- Build for specific platforms:
make build-amd64-linux
make build-arm64-linux
make build-win64
make build-freebsd64
make build-macos-arm64
make build-macos-amd64
- Build for all supported platforms:
make build
- Clean build artifacts:
make clean
After building, you can find the executable in the dist directory. Run it with:
cd dist && ./kalmia_<version>_<platform>
Replace and with the appropriate values.
Remember there should be a config.json file in the same directory as the executable or you can specify the same with the -config flag.
You can visit the website at http://localhost:2727/admin to start using Kalmia.
We welcome contributions from the community. Please feel free to submit a Pull Request. We primarily use SQLite while developing, to setup a development environment, you can run:
npm install
npm run start
In the web/ directory and then run:
air .
In the root directory in a separate terminal to start the Go server. Make sure you have Air installed.
AGPL-3.0