This is a nodejs application, so proficiency with the node ecosystem is required.
NodeJS v22 or v20 must be installed.
You can get NodeJS v22 or v20 without impacting other Node installations using Node Version Manager (nvm)
Get NodeJS v22 with nvm
nvm install 22 && nvm use 22Clone this repository:
git clone https://github.com/aradzie/keybr.com.git
cd keybr.comInstall dependencies:
npm installCreate your own config file by copying .env.example to either .env or to a global location /etc/keybr/env. The latter is better because it allows you to run scripts from any location, not only from the root directory of the repository.
sudo mkdir -p /etc/keybr
sudo cp .env.example /etc/keybr/envRun basic sanity checks, compile, bundle and test the application:
npm run compile
npm run build-dev
env DATABASE_CLIENT=sqlite npm testWhen running the application for the first time, make sure that database tables are created and example users exist:
./packages/devenv/lib/initdb.tsFinally, start the web server:
npm startWith the default config the application should be accessible at http://localhost:3000/
While actively developing, you may want your changes to be automatically built and
visible on page refresh.
Run the following command at the same time as npm start in another shell:
npm run watch