Skip to content

Installation

Prerequisites

Requirement Minimum Version Check Command
Node.js 22.0.0 or higher node --version
npm 8.0.0 or higher npm --version

Install Node.js if you don't have it:

nvm install 22
nvm use 22
brew install node
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs
winget install OpenJS.NodeJS.LTS

Best for teams and individuals who want ges available everywhere.

npm install -g @greenarmor/ges

Or with pnpm:

pnpm add -g @greenarmor/ges

After installation, the ges command is available system-wide.

Option 2 — Run Without Installing

Run directly without a global install. Downloads and executes on demand.

npx @greenarmor/ges init
npx @greenarmor/ges audit
npx @greenarmor/ges score

Or with pnpm:

pnpm dlx @greenarmor/ges init

Option 3 — Install from Source

For developers contributing to GESF or building from source.

# Clone the repository
git clone https://github.com/greenarmor/gesf.git
cd gesf

# Install pnpm if not available
npm install -g pnpm

# Install all dependencies
pnpm install

# Build all packages
pnpm -r run build

# Link the CLI globally
cd packages/cli
npm link

After linking, ges is available system-wide pointing to your local build.


Verify Installation

# Check version
ges --version
# Output: 0.1.0

# Check available commands
ges --help

# Run a quick test
mkdir /tmp/test-project && cd /tmp/test-project
echo '{"name":"test"}' > package.json
ges init --name "Test" --type "generic-web-application" --frameworks "GDPR,OWASP"
ges audit
ges doctor

Exercise: Verify Your Install

  1. Run ges --version and confirm it outputs 0.1.0 or higher
  2. Run ges --help and confirm you see at least 12 commands listed
  3. Create a throwaway project and initialize it:
mkdir /tmp/gesf-test && cd /tmp/gesf-test
echo '{"name":"test-project"}' > package.json
ges init -n "My Test" -t saas -f "GDPR,OWASP"
ls -la .ges/ compliance/ security/ controls/

You should see the .ges/, compliance/, security/, and controls/ directories created.