Skip to content

v0.4.0

Choose a tag to compare

@medaminerjb medaminerjb released this 04 Aug 21:39
· 49 commits to master since this release
d314a3d

SaaSKit v0.4.0

This release introduces Extensible Identity Metadata, allowing applications to attach custom structured data to users and organizations without requiring database schema changes.

This completes Phase 4 of the SaaSKit roadmap and significantly improves the platform's flexibility for real-world SaaS applications.


🚀 Highlights

Extensible User Metadata

Users now support two metadata stores:

  • Public metadata
  • Private metadata

This enables applications to safely separate client-visible information from backend-only data while maintaining a consistent identity model.

Typical use cases include:

  • Profile preferences
  • Application settings
  • Feature flags
  • CRM identifiers
  • Synchronization state
  • Internal service data

Tenant Metadata

Organizations can now store arbitrary JSON metadata, making it easy to support application-specific configuration without modifying the database schema.

Examples include:

  • Branding
  • Billing settings
  • External system IDs
  • Marketplace configuration
  • Business preferences
  • Custom integrations

🔒 RBAC Integration

Metadata operations are fully integrated into SaaSKit's permission system.

New permissions:

  • user.metadata.read
  • user.metadata.write
  • tenant.metadata.read
  • tenant.metadata.write

⚡ PostgreSQL JSONB

Metadata is powered by PostgreSQL JSONB with:

  • GIN indexes
  • 32 KB size limits
  • Efficient querying
  • Flexible document storage

📡 Event Driven

Metadata updates now publish system events:

  • user.metadata.updated
  • tenant.metadata.updated

These events provide the foundation for audit logging, integrations, background workers, and future webhook support.


🌐 New API Endpoints

Users

GET   /api/v1/users/me/metadata
PATCH /api/v1/users/me/metadata

Tenants

GET   /api/v1/tenants/{id}/metadata
PATCH /api/v1/tenants/{id}/metadata

🧪 Testing

This release adds comprehensive integration tests covering:

  • User metadata
  • Tenant metadata
  • RBAC authorization
  • Repository implementations

All tests are passing.


Compatibility

✅ No breaking changes.

Simply apply the new database migrations and upgrade as usual.


Roadmap

Completed:

  • ✅ Phase 0 — Foundation
  • ✅ Phase 1 — Identity Core
  • ✅ Phase 2 — Multi-Tenancy
  • ✅ Phase 3 — RBAC, MFA & Token Security
  • ✅ Phase 4 — Extensible Identity Metadata

Next, development will focus on the remaining milestones on the path to SaaSKit v1.0, including enterprise identity features, OpenID Connect certification, SDKs, and production hardening.

Thank you to everyone following and contributing to SaaSKit.