# go-backend

## Local Postgres

Start Postgres with Podman:

```bash
just db-up
```

Reset the local database volume and reinitialize the schema:

```bash
just db-reset
```

The database is exposed at `localhost:5432` and initialized from `internal/db/schema.sql`.
The local workflow uses `podman compose`.
If your global Docker config contains corporate credential helpers, the `just` recipes isolate compose with a local `DOCKER_CONFIG` to avoid unrelated registry auth hooks on public image pulls.
Fresh database volumes are also seeded from `internal/db/seed.sql` with `demo@xtablo.com / xtablo-demo`.

Connection string:

```bash
export DATABASE_URL=postgres://xtablo:xtablo@localhost:5432/xtablo?sslmode=disable
```

Run the app with hot reload:

```bash
just dev
```

Other useful commands:

```bash
just generate
just test
just build
just check
just db-logs
just db-down
```
