Skip to content

Development

Requirements

  • Ruby v3.1+
  • Node.js v20+
  • Python
  • Docker (Docker Compose)
  • actionlint

Main Directories

.
├── docs      # MKDocs based docs
├── frontend  # Vue.js based frontend
├── lib       # Mihari gem
└── spec      # Rspec tests

Project Setup

# Install Ruby dependencies
bundle install
# Install Lefthook hook
lefthook install
# Install Python dependencies for documentation (optional)
pip install -r requirements.txt
# Install Node.js dependencies (optional)
cd frontend
npm install

Tips

How to Run Tests

bundle exec rake
cd frontend
npm run test:unit

How o Build the Frontend

The repository does not contain the built frontend assets. So you have to build the frontend to dev/test the web app.

cd frontend
npm run build

Alternatively, you can do it by:

./build_frontend.sh

How to Build the Docs

mkdocs build
# or
mkdocs serve