RMT gives the power of CRM's to individuals.
Record your thoughts. Track your state of mind over time.
Manage relationships like a pro.
Coming soon.
- npm v8.19.2+
- go v1.18.2+
- make v3.81+
Download the dependencies by running make
in the project root.
Configure the server by copying the contents of app/example.config.yml
into a new app/config.yml
file.
Replace the signing secret with your own secret. The signing secret is used for session validation.
Initialize the dev database by running make init-dev-db
. This will create a new SQLite database with all the tables
created. It will also add a new "admin" user with a default password of "not_secure".
Launch the API by running make run-dev-server
.
Launch the web server by running make run-dev-client
.
The backend of RMT is split into two distinct segments: Core, and the HTTP server.
app/core/
is the heart of the service. It is responsible for database interactions (database/
, repos/
), defining the models used throughout the app (models/
), and defining the business logic (interactors/
). core/
is protocol agnostic.
app/httpserver
is an HTTP server that exposes app/core
's functionality to web clients. app/httpserver
defines different HTTP controllers to handle incoming requests (controllers/
), and those controllers delegate work to app/core
.
The frontend of RMT lives in web-client/
. The web client is implemented using SvelteKit, and the project project loosely follows SvelteKit project conventions.