Skip to content

Latest commit

 

History

History
78 lines (54 loc) · 1.96 KB

File metadata and controls

78 lines (54 loc) · 1.96 KB

Getting Started

This is a NodeJS application, so proficiency with the node ecosystem is required.

Prerequisites

NodeJS v24 must be installed.
You can get NodeJS v24 without impacting other Node installations using Node Version Manager (nvm)

Get NodeJS v24 with nvm
nvm install 24 && nvm use 24

Or you can create a complete custom development environment using Toolbx with your own version on NodeJS.

Install and setup

Clone this repository:

git clone https://github.com/aradzie/keybr.com.git
cd keybr.com

Install dependencies:

npm install

Create 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/env

Run basic sanity checks, compile, bundle and test the application:

npm run compile
npm run build-dev
env DATABASE_CLIENT=sqlite npm test

When running the application for the first time, make sure that database tables are created and example users exist:

  ./packages/devenv/lib/initdb.ts

Finally, start the web server:

npm start

With 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

Docker

There is also an ability to deploy app with Docker or Docker Compose, Dockerfile and docker-compose.yaml are provided.

There are some limitations: exposed port should always be 3000