Sovereign Identity

Secure, decoupled authentication using Sirpi and Firebase.

Architecture over SDKs

In most applications, authentication logic is scattered across the entire UI. Sirpi treats Identity as a first-class Sculpture. We wrap the Firebase Auth SDK in a strict Object Calisthenic boundary.

The Identity Lattice

Instead of components querying auth.currentUser, they subscribe to Identity Intents. This ensures that your business logic remains 100% testable and unaware of the underlying Auth provider.

Live Integration: sirpi-dev

The Sirpi framework is pre-configured to work with the sirpi-dev Firebase project. Authentication signals are automatically converted into the following intents:

  • UserIdentified: Published when a valid session is found.
  • AuthFailed: Published when credentials are invalid.
  • SessionExpired: Published when the user is logged out.

Implementation Example

In a Sirpi-compliant codebase, logging in a user looks like this:

// Pure OC logic
class LoginSculpture {
    private readonly auth: IdentityBridge;
    
    public submit(credentials: Credentials): void {
        this.auth.authenticate(credentials);
        // The IdentityBridge will emit the Intent later
    }
}