hashicorp-forge/hermes
⭐ 1,883 · TypeScript · GitHub Repo
A document management system
emberjs golang
1-Sentence Summary
HashiCorp's open-source document management system that scales enterprise writing by integrating directly with Google Workspace or Microsoft 365.
🔥 Key Capabilities & USP
Dual Enterprise Backend Support: Works natively with either Google Workspace (Drive, Docs, Gmail) or SharePoint/Microsoft 365 as the document storage layer. Solves the pain point of forcing teams to adopt a separate, siloed document tool when they already have an enterprise cloud investment.
Structured Document Lifecycle: Enforces a three-folder hierarchy—Drafts, Published Documents, Shortcuts—to cleanly separate work-in-progress from finalized content. Eliminates the chaos of shared drives where published docs and rough drafts live side-by-side.
Optional Jira Integration: Links Hermes projects directly with Jira issues for workflow tracking. Bridges the gap between document creation and project management, a critical need for engineering and product teams.
Group-Based Approvals: Supports Microsoft distribution lists or Google Groups as document approvers (optional). Provides a governance layer without requiring a separate approval tool.
Algolia-Powered Full-Text Search: Required integration provides enterprise-grade search across all documents, solving the "I know it exists but can't find it" problem endemic to shared drives.
USP: Unlike generic document portals, Hermes is built to extend your existing cloud infrastructure rather than replace it, making it a natural fit for organizations already deep in the Google or Microsoft ecosystem.
Technical Architecture
| Component | Technology | Role |
|---|---|---|
| Backend | Go 1.18 | API server, business logic, backend abstraction layer |
| Frontend | Ember.js (Node.js 20, Yarn ~3.3.0) | Web application UI |
| Database | PostgreSQL | Application state, metadata, user/group mappings |
| Search | Algolia | Document indexing and full-text search |
| Auth (Google) | OAuth2 | Google Workspace authentication |
| Auth (Microsoft) | Microsoft Entra ID / OIDC | SharePoint/M365 authentication |
| Optional Auth | ALB-fronted OIDC | Alternative auth for load-balanced deployments |
Architectural Highlights:
- Backend abstraction pattern: The Go server uses a configurable backend driver (Google vs. Microsoft), allowing the same codebase to serve both ecosystems.
- Dual-process architecture: A
serverprocess handles API requests, while a separateindexerprocess manages Algolia search indexing—enabling independent scaling. - Alpha-stage complexity: Requires multiple external services (Algolia, PostgreSQL, cloud API configurations), which is both a strength (modularity) and a setup burden.
Quick Start Guide
# 1. Copy and edit the configuration template
cp configs/config.hcl ./
# Edit config.hcl with your backend credentials (Google or Microsoft)
# 2. Build the Hermes binary
make build
# 3. Start a local PostgreSQL instance via Docker
make docker/postgres/start
# 4. Start the Hermes server (API + frontend)
./hermes server -config=config.hcl
# 5. Start the search indexer in a separate terminal
./hermes indexer -config=config.hclSetup logic: Configuration is driven entirely by a single config.hcl file. You must provision external services (Algolia, PostgreSQL, Google Cloud or Azure app registrations) before running the server.
Pros, Cons & Use Cases
Pros
- Open source with enterprise pedigree: Backed by HashiCorp's engineering practices, not a side project.
- Leverages existing investments: No need to migrate documents out of Google Drive or SharePoint.
- Structured workflow: The Draft → Published pipeline enforces document maturity without heavy process.
- Extensible: The backend abstraction pattern means future cloud storage providers could be added.
Cons
- Alpha-stage maturity: Not production-ready; expect breaking changes, incomplete features, and limited documentation.
- High setup complexity: Requires configuring Algolia, PostgreSQL, OAuth2/OIDC, and cloud API permissions—this is not a 5-minute deploy.
- External service dependencies: You cannot run Hermes without Algolia (search) and either Google Cloud or Azure (auth/storage).
- Not an official HashiCorp product: No support SLAs, no commercial backing, community-driven maintenance.
Who should NOT use this?
- Small teams or solo operators: The infrastructure overhead (Algolia, PostgreSQL, cloud APIs) outweighs the benefits for fewer than ~20 users.
- Organizations without Google Workspace or Microsoft 365: Hermes is useless without one of these backends.
- Teams needing a quick, self-contained solution: If you want a single Docker container that "just works," look elsewhere.
- Production-critical document workflows today: Alpha software means instability; do not bet your compliance or audit trail on it yet.
Ideal Use Cases
- Engineering teams at mid-to-large enterprises already using Google Workspace or M365 who need structured document lifecycle (RFCs, design docs, runbooks).
- Organizations with HashiCorp tooling (Terraform, Vault, Consul) who want a consistent operational model for document management.
- Teams that need Jira integration for linking documents to tickets and tracking approvals.
- Proof-of-concept evaluations for replacing ad-hoc shared drives with a governed document system.
Community & Activity
With 1,883 stars and an active repository (last updated May 2026), Hermes has strong community interest for an alpha-stage project. The HashiCorp forge backing lends credibility and suggests ongoing investment, even if it's not an official product. The combination of Go + Ember.js + enterprise integrations attracts a niche but engaged audience of platform engineers who appreciate the architectural choices. While the issue tracker and contribution activity should be verified directly, the star count and recent updates signal that this is not abandonware—it's a living project worth watching for teams that fit its specific niche.