Katarive Server is the central backend engine for the Katarive audio narration service. It manages narration job lifecycles and provides a plugin-based architecture for flexible audio generation.
The server acts as a unified endpoint, supporting native gRPC, gRPC-Web, and static asset hosting.
The following external tools are required to build and manage the project (excludes libraries already managed in go.mod):
- Go: v1.25+
- Buf CLI: For Protobuf code generation
- Make: For running build tasks
The server serves static files from the web/ directory. You can customize the dashboard by placing your preferred static UI files (HTML, CSS, JS) into the web/ directory. By default, these are served at the /static/ path.
Katarive supports an extensible plugin system for audio narration. You can add your preferred narrator or source plugins by placing the compiled plugin binaries into the plugins/ directory. The server automatically loads plugins from this location at startup.
Starts the server on port 9421:
make runGenerate Go code from remote Protobuf definitions:
make pb-generateExecute the unit test suite:
make testFormat the Go source code:
make format