{"repo":"daangn/ventyd","free":true,"listed":false,"github":"https://github.com/daangn/ventyd","clone":"git clone https://github.com/daangn/ventyd.git","description":"A TypeScript-first event sourcing library with full type safety and flexible schema language & storage backends.","language":"TypeScript","stars":43,"topics":["event","eventsourcing","mongodb","cqrs","ddd"],"license":"MIT","category":"machine-learning","readme_excerpt":"A TypeScript-first event sourcing library Features - Type-Safe Event Sourcing : Full TypeScript support with comprehensive type inference - Standard Schema Support : Built on Standard Schema specification for maximum flexibility - Multiple Validation Libraries : Official integrations for Valibot, Zod, ArkType, and TypeBox - use your favorite validation library - Flexible Storage Adapters : Connect to any database through a simple interface - Event-Driven Architecture : Capture all state changes as immutable events - Time Travel : Reconstruct entity state at any point in history - Lightweight : Minimal dependencies, focused on core functionality - Plugin System : Extensible architecture for side effects (analytics, logging, etc.) Installation Installing Validation Libraries Ventyd is built on the Standard Schema specification. Choose your preferred validation library: Quick Start 1. Define Your Schema Define your entity schema with events and state. This example uses Valibot: 2. Create a Reducer The reducer determines how events transform the entity state: 3. Create Your Entity Class Create an entity class with business logic: 4. Set Up Repository Create a repository with an adapter: 5. Use Your Event-Sourced Entity Core Concepts Event Sourcing Event sourcing captures all changes to application state as a sequence of events. Instead of storing just the current state, the system stores all events that led to that state. This provides: - Complete Audit Trail : Every change is re","default_branch":null,"files":null,"tree":[],"storefront":"/r/daangn","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/daangn/ventyd/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}