Skip to content

CyberismoCom/cyberismo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,143 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Cyberismo: a tool for making a difference in cybersecurity

Visit Cyberismo solution for an overview and Cyberismo documentation for instructions and tutorials.

Copyright © Cyberismo Ltd and contributors 2024

License and trademark policy

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License version 3 as published by the Free Software Foundation.

The use of Cyberismo trademark is governed by the Cyberismo open source trademark policy. See separate file TRADEMARK.adoc.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

See separate file LICENSE for more information.

Notice that while Cyberismo Ltd enforces the license of this software, the license does not affect the content produced by Cyberismo tool users. Users can be confident that the resulting documents and resources produced with Cyberismo tools and software are not affected by the licenses that Cyberismo Ltd uses to distribute the software.

Contributing

See separate file CONTRIBUTING.

Development

The easiest way to set up a development environment is using a Dev Container. It installs all system dependencies automatically.

Prerequisites

Getting Started

  1. Clone the repository

  2. Open the folder in VS Code

  3. When prompted, click Reopen in Container (or run Dev Containers: Reopen in Container from the command palette)

  4. Wait for the container to build and the post-create script to finish

  5. Run pnpm dev to start the development servers

The dev container automatically installs all system dependencies (Clingo, Ruby, C++ build tools), Node.js 22, pnpm, and project dependencies.

Manual Setup

If you prefer not to use a Dev Container, install the following system dependencies first.

System Dependencies

Linux (Ubuntu/Debian)

sudo apt-get update
sudo apt-get install -y ruby-full build-essential g++-14 python3 make
sudo gem install --no-document asciidoctor-pdf rouge

Linux (Fedora)

sudo dnf install ruby rubygems gcc-c++ python3 make
sudo gem install --no-document asciidoctor-pdf rouge

macOS

brew install clingo ruby
gem install --no-document asciidoctor-pdf rouge

Xcode Command Line Tools are also required (xcode-select --install).

Windows

Install Node.js with the "Tools for Native Modules" option. Install Clingo via conda using the environment.yml at the repo root:

conda env create -f environment.yml
conda activate cyberismo

Node.js and pnpm

Install Node.js 22 LTS, then enable pnpm via corepack:

corepack enable

Install Dependencies and Build

pnpm install
pnpm build

Copy env.example files to respective .env files:

cp tools/backend/env.example tools/backend/.env

CLI related dependencies: README.md

Run Project

pnpm dev

Backend is accessible at http://localhost:3000

Frontend is accessible at http://localhost:5173

About

A security-as-code tool for making a difference in cybersecurity

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors