Skip to content

Txlog Server Documentation

I've built the Txlog Server to be the heart of the entire platform. It's where the magic happens: handling authentication, keeping your transaction logs safe, and providing the REST API that both our agents and UIs depend on. Think of it as the conductor of an orchestra, making sure every service stays in sync, data remains intact, and your security policies are actually followed.

TL;DR

Ready to get moving? You'll need a database first.

sql
-- Create the database
CREATE DATABASE txlog;

Once that's sorted, you can fire up the server with a single Docker command.

bash
# Run the server
docker run -d --name txlog-server \
  -e PGSQL_HOST=db.example.com \
  -e PGSQL_USER=txlog \
  -e PGSQL_PASSWORD=txlog \
  -e PGSQL_DB=txlog \
  -p 8080:8080 \
  ghcr.io/txlog/server:main

1. Tutorials

If you're just starting out, I've put together some lessons to help you find your feet.

2. How-to Guides

Got a specific problem to solve? These guides are designed to help you get things done.

Authentication & Security

Operations

Reports

Development

  • Run Tests: Let's make sure everything actually works before we ship it.

3. Reference

Looking for the nitty-gritty details? You'll find all the technical specs right here.

System

LDAP Specifics

4. Explanation

Curious about why things work the way they do? I've written these to give you some background.

Architecture

  • System Architecture: The "why" behind the design, the tech stack, and our distributed scheduler.
  • OSV Integration Details: How do we actually fetch and score vulnerabilities? It's all in here.
  • Data Model: A closer look at the entities and how they relate to each other.

Deep Dives

5. API Documentation

Once your server is up and running, you can explore the API interactively at: http://localhost:8080/swagger/index.html

I've generated this from the code comments in docs/docs.go. If you make changes, just run make doc to keep everything up to date.