This guide explains how to configure GigaChad GRC modules to match your organization's needs. You can enable only the modules you need, reducing complexity and focusing the interface on relevant functionality.
- Overview
- Available Modules
- Configuration Presets
- Environment Variable Reference
- How to Configure
- Module Dependencies
- Behavior When Disabled
- Best Practices
GigaChad GRC is a modular platform. Each module can be independently enabled or disabled:
- At deploy time via environment variables (baseline defaults for all orgs)
- Per organization in the UI via the Module Configuration settings page
When a module is disabled:
- Navigation items are hidden - Users won't see menu items for disabled modules
- Routes are blocked - Direct URL access shows a "Module Not Enabled" page
- Data remains intact - Disabling a module doesn't delete any data
- Re-enabling is instant - Either change the environment variable and restart, or re-enable it in the UI
This allows you to:
- Start with essential modules and expand over time
- Tailor the interface for different use cases
- Reduce cognitive load by hiding irrelevant features
- Create focused deployments for specific compliance needs
| Module | Env Variable | Description | Features |
|---|---|---|---|
| Compliance | VITE_ENABLE_COMPLIANCE_MODULE |
Core compliance management | Controls, Frameworks, Evidence, Compliance Calendar |
| Data | VITE_ENABLE_DATA_MODULE |
Data governance | Policies, Assets, Integrations |
| Module | Env Variable | Description | Features |
|---|---|---|---|
| Risk | VITE_ENABLE_RISK_MODULE |
Risk management | Risk Dashboard, Risk Register, Heatmap, Scenarios, Reports |
| TPRM | VITE_ENABLE_TPRM_MODULE |
Third-party risk | Vendors, Assessments, Contracts, Questionnaires |
| Module | Env Variable | Description | Features |
|---|---|---|---|
| BC/DR | VITE_ENABLE_BCDR_MODULE |
Business continuity | BC/DR Dashboard, Business Processes, Plans, DR Tests, Runbooks, Communication Plans |
| Audit | VITE_ENABLE_AUDIT_MODULE |
Internal audit | Audits, Findings, Audit Requests, Audit Log |
| Module | Env Variable | Description | Features |
|---|---|---|---|
| Trust | VITE_ENABLE_TRUST_MODULE |
Customer trust | Trust Center, Knowledge Base |
| People | VITE_ENABLE_PEOPLE_MODULE |
Employee compliance | Employee Compliance, Training, Awareness |
| Module | Env Variable | Description | Features |
|---|---|---|---|
| AI | VITE_ENABLE_AI_MODULE |
AI capabilities | AI Risk Analysis, Control Suggestions, MCP Servers |
| Tools | VITE_ENABLE_TOOLS_MODULE |
Additional tools | Custom Dashboards, Scheduled Reports |
Choose a preset that matches your use case, or create a custom configuration.
Use case: Enterprise organizations needing comprehensive GRC capabilities
VITE_ENABLE_COMPLIANCE_MODULE=true
VITE_ENABLE_DATA_MODULE=true
VITE_ENABLE_RISK_MODULE=true
VITE_ENABLE_TPRM_MODULE=true
VITE_ENABLE_BCDR_MODULE=true
VITE_ENABLE_AUDIT_MODULE=true
VITE_ENABLE_TRUST_MODULE=true
VITE_ENABLE_PEOPLE_MODULE=true
VITE_ENABLE_AI_MODULE=false
VITE_ENABLE_TOOLS_MODULE=trueUse case: Organizations focused on compliance and risk management without vendor management or BC/DR
VITE_ENABLE_COMPLIANCE_MODULE=true
VITE_ENABLE_DATA_MODULE=true
VITE_ENABLE_RISK_MODULE=true
VITE_ENABLE_TPRM_MODULE=false
VITE_ENABLE_BCDR_MODULE=false
VITE_ENABLE_AUDIT_MODULE=true
VITE_ENABLE_TRUST_MODULE=false
VITE_ENABLE_PEOPLE_MODULE=false
VITE_ENABLE_AI_MODULE=false
VITE_ENABLE_TOOLS_MODULE=trueEnabled features:
- ✅ Controls & Frameworks
- ✅ Evidence management
- ✅ Policy management
- ✅ Asset tracking
- ✅ Risk register & heatmap
- ✅ Internal audits
- ✅ Custom dashboards
Hidden features:
- ❌ Vendor management
- ❌ BC/DR planning
- ❌ Trust Center
- ❌ Employee compliance
Use case: Organizations needing only compliance tracking (controls, frameworks, evidence)
VITE_ENABLE_COMPLIANCE_MODULE=true
VITE_ENABLE_DATA_MODULE=true
VITE_ENABLE_RISK_MODULE=false
VITE_ENABLE_TPRM_MODULE=false
VITE_ENABLE_BCDR_MODULE=false
VITE_ENABLE_AUDIT_MODULE=false
VITE_ENABLE_TRUST_MODULE=false
VITE_ENABLE_PEOPLE_MODULE=false
VITE_ENABLE_AI_MODULE=false
VITE_ENABLE_TOOLS_MODULE=falseEnabled features:
- ✅ Controls & Frameworks
- ✅ Evidence management
- ✅ Policy management
- ✅ Asset tracking
- ✅ Compliance calendar
- ✅ Integrations (for automated evidence)
Hidden features:
- ❌ Risk management
- ❌ Vendor management
- ❌ Audits
- ❌ BC/DR
- ❌ Trust Center
- ❌ Employee compliance
- ❌ Custom dashboards
Use case: Risk-centric organizations with vendor oversight needs
VITE_ENABLE_COMPLIANCE_MODULE=true
VITE_ENABLE_DATA_MODULE=true
VITE_ENABLE_RISK_MODULE=true
VITE_ENABLE_TPRM_MODULE=true
VITE_ENABLE_BCDR_MODULE=false
VITE_ENABLE_AUDIT_MODULE=false
VITE_ENABLE_TRUST_MODULE=false
VITE_ENABLE_PEOPLE_MODULE=false
VITE_ENABLE_AI_MODULE=false
VITE_ENABLE_TOOLS_MODULE=trueUse case: Large enterprises requiring business continuity and AI features
VITE_ENABLE_COMPLIANCE_MODULE=true
VITE_ENABLE_DATA_MODULE=true
VITE_ENABLE_RISK_MODULE=true
VITE_ENABLE_TPRM_MODULE=true
VITE_ENABLE_BCDR_MODULE=true
VITE_ENABLE_AUDIT_MODULE=true
VITE_ENABLE_TRUST_MODULE=true
VITE_ENABLE_PEOPLE_MODULE=true
VITE_ENABLE_AI_MODULE=true
VITE_ENABLE_TOOLS_MODULE=trueNote: AI module requires additional configuration (API keys for OpenAI/Anthropic)
| Variable | Default | Description |
|---|---|---|
VITE_ENABLE_COMPLIANCE_MODULE |
true |
Controls, Frameworks, Evidence, Calendar |
VITE_ENABLE_DATA_MODULE |
true |
Policies, Assets, Integrations |
VITE_ENABLE_RISK_MODULE |
true |
Risk Dashboard, Register, Heatmap, Scenarios |
VITE_ENABLE_TPRM_MODULE |
true |
Vendors, Assessments, Contracts, Questionnaires |
VITE_ENABLE_BCDR_MODULE |
true |
BC/DR Dashboard, Processes, Plans, Tests, Runbooks |
VITE_ENABLE_AUDIT_MODULE |
true |
Audits, Findings, Requests, Audit Log |
VITE_ENABLE_TRUST_MODULE |
true |
Trust Center, Knowledge Base |
VITE_ENABLE_PEOPLE_MODULE |
true |
Employee Compliance, Training |
VITE_ENABLE_AI_MODULE |
false |
AI Features, MCP Servers |
VITE_ENABLE_TOOLS_MODULE |
true |
Custom Dashboards, Scheduled Reports |
trueor1— Module is enabledfalseor0— Module is disabled- Not set — Uses default value
Use this when you want to turn modules on/off for a specific customer/org without changing deployment config.
- Sign in as an administrator (admin or super_admin) for the organization.
- Go to Settings → Module Configuration (
/settings/modules). - Choose a preset (e.g., Full Platform, Core GRC, Compliance Only) or toggle modules individually.
- Click Save Configuration.
Notes:
- The UI stores module choices per organization.
- Deployment env vars still act as a baseline; the org-level config narrows or expands modules relative to that baseline.
Use this when you want to set global defaults for all organizations in an environment.
- Create or edit
.env.localin thefrontend/directory:
cd frontend
cp env-template.md .env.local # Start from template
# Edit .env.local with your preferred settings- Restart the development server:
npm run dev- Set environment variables in your deployment configuration:
docker-compose.yml:
services:
frontend:
environment:
- VITE_ENABLE_COMPLIANCE_MODULE=true
- VITE_ENABLE_DATA_MODULE=true
- VITE_ENABLE_RISK_MODULE=true
- VITE_ENABLE_TPRM_MODULE=false
# ... other modulesOr via .env file:
# .env
VITE_ENABLE_COMPLIANCE_MODULE=true
VITE_ENABLE_DATA_MODULE=true
...- Rebuild and restart the frontend container:
docker-compose build frontend
docker-compose up -d frontendModule settings are baked into the frontend at build time (Vite inlines VITE_* variables). To change configuration:
- Update environment variables
- Rebuild the frontend (
npm run buildor rebuild Docker image) - Deploy the new build
Some modules work best when certain other modules are enabled:
| Module | Recommended Companions | Reason |
|---|---|---|
| Risk | Compliance | Risk controls can link to compliance controls |
| TPRM | Risk | Vendor risks contribute to overall risk register |
| BC/DR | Data (Assets) | BC/DR plans reference critical assets |
| Audit | Compliance | Audits verify compliance controls |
| Trust | Compliance | Trust Center displays compliance posture |
Note: Modules function independently, but some cross-linking features may be limited if companion modules are disabled.
Disabled modules are hidden from the sidebar navigation. Users only see modules that are enabled.
Example: With only Compliance and Data modules enabled:
📊 Dashboard
📁 Compliance
├── Controls
├── Frameworks
└── Calendar
📄 Data
├── Evidence
├── Policies
├── Assets
└── Integrations
⚙️ Settings
If a user navigates directly to a disabled module's URL (e.g., bookmarked /risks), they see a friendly "Module Not Enabled" page:
- Explains that the module is disabled
- Shows which environment variable controls it
- Provides navigation back to enabled areas
Important: Module flags are not a security boundary. They control what is shown and routable in the frontend UI.
Permissions and API access are still enforced by the backend (Keycloak roles, permission groups, and service guards).
Do not rely on module flags alone to restrict access for licensing or security-sensitive scenarios.
Disabling a module does NOT delete data. All records remain in the database. When you re-enable a module:
- All previous data is available
- No migration or restoration needed
- Users can continue where they left off
Backend API endpoints remain functional even when frontend modules are disabled. This allows:
- API integrations to continue working
- Future re-enablement without data loss
- External systems to interact with all data
Begin with core modules and add more as your program matures:
Phase 1: Compliance + Data (establish baseline)
Phase 2: Add Risk (risk program)
Phase 3: Add TPRM (vendor management)
Phase 4: Add Audit, BC/DR, People (mature program)
Keep a record of which modules you've enabled and why:
# Our Configuration Rationale:
# - Compliance: Core requirement for SOC 2
# - Data: Policy and asset management
# - Risk: Required by our risk framework
# - TPRM: Not needed (no critical vendors)
# - BC/DR: Planned for Q3 2025Before changing production configuration:
- Test in a staging environment
- Verify navigation changes
- Check that expected features are visible/hidden
- Confirm no errors when accessing enabled modules
When enabling new modules:
- Announce the change to users
- Provide documentation or training
- Consider a phased rollout for complex modules
Reassess your module configuration quarterly:
- Are all enabled modules being used?
- Are there disabled modules that would now be valuable?
- Have your compliance requirements changed?
Cause: Frontend wasn't rebuilt after changing environment variables.
Solution:
- Development: Restart
npm run dev - Production: Rebuild and redeploy frontend
Cause: Typo in environment variable name or value.
Solution: Verify exact variable name and value (true, not TRUE or yes):
# Correct
VITE_ENABLE_RISK_MODULE=true
# Incorrect
VITE_ENABLE_RISK_MODULE=TRUE # Should be lowercase
VITE_ENABLE_RISKS_MODULE=true # Wrong name
VITE_ENABLE_RISK_MODULE=yes # Wrong valueCause: This shouldn't happen - data is preserved.
Solution: Check that you're connected to the correct database. Data remains in the database regardless of frontend module settings.
Q: Can I have different module configurations for different users?
A: Currently, module configuration is instance-wide. All users see the same enabled modules. Role-based access control (RBAC) handles user-specific permissions within enabled modules.
Q: Does disabling a module improve performance?
A: Marginally. Disabled modules don't load their code (thanks to lazy loading), but the performance impact of having all modules enabled is minimal.
Q: Can I disable the Dashboard?
A: No. Dashboard, Settings, Help, and Account pages are always available.
Q: What happens to scheduled notifications for disabled modules?
A: Backend notifications (emails, scheduled jobs) continue to run. Consider pausing notification schedules for disabled modules in Settings → Notifications.
- Environment Configuration - Full environment variable reference
- Deployment Guide - Production deployment instructions
- Quick Start - Getting started guide