evented

Implement event sourcing for Ecto schemas with Spector audit trails.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/ityonemo/pepper --skill evented
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: evented
Source: https://github.com/ityonemo/pepper/tree/main/.claude/skills/evented
Command: npx skills add https://github.com/ityonemo/pepper --skill evented

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a robust framework for implementing event sourcing in Elixir applications, enabling audit trails, temporal queries, and history replay for Ecto schemas.

Core Features & Use Cases

  • Event Logging: Records all changes to specified schemas as immutable events.
  • Audit Trails: Maintains a complete history of all data modifications.
  • Temporal Queries: Allows querying data as it existed at any point in time.
  • History Replay: Reconstructs schema state by replaying events.
  • Schema Versioning: Manages schema evolution and automatic migration during replay.
  • Use Case: Track every change to a user's profile, from creation to updates and deletions, allowing you to revert to any previous state or audit who changed what and when.

Quick Start

Use the evented skill to insert a new user record into the Data.User schema.

Frequently Asked Questions about evented

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement event sourcing for Ecto schemas in Elixir?

Event sourcing records all changes to Ecto schemas as immutable events using Spector, enabling audit trails, temporal queries, and history replay. It maintains a complete history of data modifications for reconstructing past states.

Can I query Ecto database records as they existed at a specific point in time?

Temporal queries allow you to query Ecto schema data as it existed at any point in time. Spector replays the event history to reconstruct the exact state of the record for the requested timestamp.

Does Spector support schema versioning and automatic migration during event replay?

Spector supports schema versioning to manage schema evolution and performs automatic migration during history replay. This ensures older events apply correctly to updated Ecto schema structures without manual intervention.

What is the best way to optimize event sourcing performance for long event histories?

Savepoints optimize performance with long event histories by caching intermediate states. This reduces the number of events Spector must replay to reconstruct the current Ecto schema state, minimizing computational overhead.

Do I need Ecto and Spector to manage audit trails in Elixir applications?

Yes, you need both Ecto and Spector to manage audit trails using this event sourcing implementation. Ecto handles database interactions while Spector manages the event logging, temporal queries, and history replay functionality.