Getting Started
Deploy zGovern with Docker Compose, create your first compliance framework, and have your team logging in within 15 minutes.
Prerequisites
Before installing zGovern, ensure the following tools are available on your system:
| Tool | Minimum Version | Check Command |
|---|---|---|
| Docker | 24.0 | docker --version |
| Docker Compose | 2.20 (v2 syntax) | docker compose version |
| Git | Any recent version | git --version |
docker compose (with a space, v2) rather than docker-compose (v1 with a hyphen). The two CLIs behave differently and the v1 plugin is no longer maintained.
Installation
-
Clone the repositorybash
git clone https://github.com/your-org/zgovern.git cd zgovern -
Review environment variables (optional)
The
docker-compose.ymlships with sensible defaults for local development. For production, you should override these values — especially the JWT secret and encryption key.docker-compose.yml (backend environment excerpt)DATABASE_URL: postgresql://postgres:postgres@db:5432/zgovern JWT_SECRET: change-me-in-production ENCRYPTION_KEY: 64-char-hex-key-for-aes-256-gcm SMTP_HOST: # optional — leave blank to log emails to console APP_URL: http://localhost:3000 -
Build and start all servicesbash
docker compose up --buildOn first run this will:
- Build the backend (Express) and frontend (React/Vite) Docker images
- Start PostgreSQL and run
prisma db pushto create the schema - Seed the database with 482 compliance controls across 18 frameworks, default policies, and the admin user
-
Verify services are runningbash
docker compose psYou should see three containers in
runningstate:expected outputNAME STATUS PORTS zgovern-frontend Up 127.0.0.1:3000->80/tcp zgovern-backend Up 127.0.0.1:4000->4000/tcp zgovern-docs Up 127.0.0.1:4001->80/tcp zgovern-postgres Up 5432/tcp -
Open the application
Navigate to http://localhost:3000 in your browser. You should see the zGovern login page.
First Login
A default administrator account is created automatically during database seeding. The admin email is admin@zgovern.com. The password is set by the SEED_ADMIN_PASSWORD environment variable in your .env file (see docker-compose.yml).
| Field | Value |
|---|---|
admin@zgovern.com | |
| Password | Set via SEED_ADMIN_PASSWORD in .env |
| Role | ADMIN |
SEED_ADMIN_PASSWORD to a random, high-entropy password before first run. Never use a weak or default password in a shared or production environment.
Creating Your First Framework
After logging in, you'll land on the Dashboard. Here's how to set up your first compliance framework:
-
Navigate to Frameworks
Click Frameworks & Controls in the left sidebar.
-
Select a framework
You'll see 18 available frameworks organised into categories: Security (SOC 2, ISO 27001, PCI-DSS 4.0, NIST CSF 2.0, NIST 800-53, CIS Controls), Privacy (GDPR, CCPA/CPRA, HIPAA, DPDP, ISO 27701, LGPD), Industry (SOC 1, HIPAA), Business/Operations (ISO 22301, ISO 9001, ISO 45001, ISO 14001), and AI (ISO 42001). Click Activate next to the framework you want to start with. We recommend beginning with SOC 2 Type II if you're a SaaS company.
-
Review the controls
Once activated, 62 (SOC 2) controls will appear in your control list, each pre-populated with:
- A plain-English description of what the control means
- Specific evidence requirements
- A suggested testing frequency
- Status set to NOT_STARTED
-
Assign control ownership
Click on any control and use the Owner dropdown to assign it to a team member. This person will receive notifications when the control's evidence needs renewal.
-
Connect an integration
Navigate to Integrations and connect your cloud provider (AWS, Azure, or GCP) to begin automatic evidence collection. See the Integrations guide for details.
Roles & Permissions
zGovern has five built-in roles. Roles are assigned per-user and apply organisation-wide.
| Permission | SUPER_ADMIN | ADMIN | COMPLIANCE_MANAGER | AUDITOR | USER |
|---|---|---|---|---|---|
| View dashboard & all data | ✅ | ✅ | ✅ | ✅ | ✅ |
| View audit logs | ✅ | ✅ | ✅ | ✅ | ❌ |
| Upload evidence / add controls | ✅ | ✅ | ✅ | ✅ | ❌ |
| Approve / reject evidence | ✅ | ✅ | ✅ | ✅ | ❌ |
| Export audit bundle | ✅ | ✅ | ✅ | ✅ | ❌ |
| Create & manage risks / policies | ✅ | ✅ | ✅ | ❌ | ❌ |
| Manage personnel / access reviews | ✅ | ✅ | ✅ | ❌ | ❌ |
| Manage integrations & vendors | ✅ | ✅ | ❌ | ❌ | ❌ |
| Configure Trust Center | ✅ | ✅ | ❌ | ❌ | ❌ |
| Invite & manage users / org settings | ✅ | ✅ | ❌ | ❌ | ❌ |
| Run monitoring scans | ✅ | ✅ | ❌ | ❌ | ❌ |
| Cross-org super access | ✅ | ❌ | ❌ | ❌ | ❌ |
Inviting Users
User management is available in the Organization Settings page (sidebar → Organization). As an ADMIN you can:
- Invite users by email address
- Set their role at invite time
- Change a user's role at any time
- Deactivate accounts without deleting them (audit trail is preserved)
Next Steps
Explore Frameworks
Learn about the 482 built-in controls across 18 frameworks and how to manage evidence for each one.
Frameworks →Connect Integrations
Link your cloud and IdP accounts to start automated evidence collection within minutes.
Integrations →Set Up Monitoring
Configure email alerts and review your first automated compliance scan results.
Monitoring →Prepare for Audit
Walk through the Audit Workspace and learn how to generate your audit bundle.
Audit Workspace →