atlas9 is a toolkit for web application development in Go.
blog
- (03.19.26) Roles, tenants, rate limiting, and a dashboard
- (03.04.26) Adding an outbox, mail, tokens, CSRF, and more
- (02.25.26) Publishing the core
- (02.09.26) My setup for integration tests in Go with embedded-postgres
- (02.04.26) Digging into UUID, ULID, and implementing my own
- (01.27.26) Modeling identity and access hierarchy in Postgres with ltree
- (01.19.26) The challenges of soft delete
- (01.15.26) Building an access framework using Cedar
- (01.04.26) Building a better software experience
code
| core | core types like ID and Path. |
| core/assert | lightweight test assertion helpers. |
| core/dbi | database abstraction with transaction management and pagination helpers. |
| core/iam | identity and access management interfaces for users, sessions, roles, grants, and tenants. |
| core/outbox | event outbox and task queue with fan-out delivery. |
| core/routes | HTTP route registration with request/response type metadata. |
| core/throttle | token bucket rate limiting. |
| core/tokens | temporary token storage with expiration. |
| iam/oidc_provider | OAuth/OIDC provider integration with automatic user creation and linking. |
| iam/scs_session | SessionStore backed by alexedwards/scs. |
| SMTP email sender. | |
| mail/mail_ses | AWS SES email sender. |
Browse the source at atlas9.dev/src.
Clone the source with git clone https://git.atlas9.dev/atlas9.git.
There's a demo app (src) with login, registration, passwords, user profiles, OIDC, and more.