Skip to content

Installation

This page gets Veckl running on your workstation. For cluster installation, use this page for configuration first, then continue to Kubernetes or Zarf Air Gap.

Install these tools before you start:

  • Go 1.22 or newer.
  • Node.js 22 or newer.
  • npm.
  • Git.
  • Access to a GitHub or GitHub Enterprise Server repository where Veckl will store test cases.

For container or cluster deployments, also install:

  • Podman or a Docker-compatible image builder.
  • Kubernetes CLI access for the target cluster.
  • Zarf if you are preparing a disconnected deployment.

Clone the repository and enter the project directory:

Terminal window
git clone https://github.com/hinsonct/veckl.git
cd veckl

Copy the template:

Terminal window
cp .env.template .env

Fill in the GitHub App, OAuth, repository, and session values in .env. The required fields are explained in Configuration.

Generate secure session keys:

Terminal window
./scripts/generate-session-keys.sh

Then verify the file:

Terminal window
./scripts/verify-env.sh .env

The make dev command installs frontend dependencies automatically if frontend/node_modules is missing. If you want to install them yourself:

Terminal window
cd frontend
npm install
cd ..

Start the backend and frontend together:

Terminal window
make dev

Open:

http://localhost:3000

make dev starts:

  • Go backend on http://localhost:8080 unless PORT is set.
  • Next.js frontend on http://localhost:3000.

Stop both processes with Ctrl+C, or run:

Terminal window
make dev-stop
Terminal window
make build
make run
make test
make lint
make clean

Frontend-only commands:

Terminal window
cd frontend
npm run dev
npm run typecheck
npm run lint
npm test

If login is not configured yet, continue to GitHub Setup. If GitHub is ready, continue to First Run.