Clustta Core - shared Go packages for the Clustta ecosystem
Clustta Core contains the shared Go packages used across the Clustta ecosystem. These packages are imported by the client, server, and studio repositories to ensure consistent behavior and reduce code duplication.

Packages
| Package |
Description |
constants |
Shared configuration variables (host URLs, user agent) with build-time override support via ldflags |
errors |
Canonical error variables for all domain types (assets, collections, workflows, etc.) |
ignore |
Gitignore-style pattern matching for file filtering |
system_icon |
Platform-specific file extension icon extraction (Windows + macOS) |
Installation
go get github.com/eaxum/clustta-core
Usage
import (
"github.com/eaxum/clustta-core/constants"
"github.com/eaxum/clustta-core/errors"
"github.com/eaxum/clustta-core/ignore"
"github.com/eaxum/clustta-core/system_icon"
)
Local Development
When developing across repos locally, use a replace directive in your go.mod:
replace github.com/eaxum/clustta-core => ../clustta-core
Remove it before committing.
Ecosystem
Clustta Core is consumed by:
- Clustta Client - The desktop application (Wails v3 + Vue 3)
- Clustta Server - The global authentication and project hosting server
- Clustta Studio - The studio/team management server
License
Clustta Core is released under the GNU Affero General Public License v3.0. See the LICENSE file for details.
About
Clustta is developed by Eaxum, a computer animation studio based in Nigeria.