{"id":31156626,"url":"https://github.com/j-tech-japan/sekiban","last_synced_at":"2026-04-18T04:01:34.956Z","repository":{"id":211990253,"uuid":"645180041","full_name":"J-Tech-Japan/Sekiban","owner":"J-Tech-Japan","description":"Sekiban - an Opinionated Event Sourcing and CQRS Framework using C#. It can store data into Azure Cosmos DB, AWS Dynamo DB or Postgres","archived":false,"fork":false,"pushed_at":"2026-04-16T08:53:20.000Z","size":84264,"stargazers_count":328,"open_issues_count":4,"forks_count":8,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-04-16T10:35:27.340Z","etag":null,"topics":["c-sharp","cosmos-db","cosmosdb","cqrs","csharp","dotnet","dynamo-db","dynamodb","event-sourcing","eventsourcing"],"latest_commit_sha":null,"homepage":"https://www.sekiban.dev","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/J-Tech-Japan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"github":["J-Tech-Japan"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2023-05-25T05:14:51.000Z","updated_at":"2026-04-16T05:53:59.000Z","dependencies_parsed_at":"2024-02-10T17:24:52.003Z","dependency_job_id":"2ff8ace8-363c-4561-97a9-8dafb23a0cda","html_url":"https://github.com/J-Tech-Japan/Sekiban","commit_stats":null,"previous_names":["j-tech-japan/sekiban"],"tags_count":386,"template":false,"template_full_name":null,"purl":"pkg:github/J-Tech-Japan/Sekiban","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/J-Tech-Japan%2FSekiban","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/J-Tech-Japan%2FSekiban/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/J-Tech-Japan%2FSekiban/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/J-Tech-Japan%2FSekiban/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/J-Tech-Japan","download_url":"https://codeload.github.com/J-Tech-Japan/Sekiban/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/J-Tech-Japan%2FSekiban/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31955919,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c-sharp","cosmos-db","cosmosdb","cqrs","csharp","dotnet","dynamo-db","dynamodb","event-sourcing","eventsourcing"],"created_at":"2025-09-18T21:04:13.043Z","updated_at":"2026-04-18T04:01:34.948Z","avatar_url":"https://github.com/J-Tech-Japan.png","language":"C#","funding_links":["https://github.com/sponsors/J-Tech-Japan"],"categories":[],"sub_categories":[],"readme":"# Sekiban - Event Sourcing and CQRS Framework\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"Sekiban Logo\" src=\"./docs/images/Sekiban_Signature.svg\" width=\"600\"\u003e\n\u003c/p\u003e\n\n**Sekiban** is an event sourcing and CQRS framework for .NET. It supports Azure Cosmos DB, PostgreSQL, and DynamoDB as event stores, with Microsoft Orleans for actor-based scalability.\n\n📚 **Documentation**: [sekiban.dev](https://www.sekiban.dev/)\n\n## Implementations\n\n\u003e **Note**: Sekiban has two implementations. **DCB (Dynamic Consistency Boundary)** is the recommended approach for new projects. Legacy Sekiban.Pure is deprecated.\n\n| Implementation | Description | Status |\n|---------------|-------------|--------|\n| **Sekiban DCB** | Dynamic Consistency Boundary - tag-based event sourcing | ✅ Recommended |\n| Sekiban.Pure | Traditional aggregate-based event sourcing | ⚠️ Deprecated |\n| Sekiban.Core | Single-server version without actor model | ❌ Legacy |\n| Sekiban.ts | TypeScript event sourcing | 🔬 Alpha |\n\n## Quick Start\n\n### Sekiban DCB (Recommended)\n\n```bash\ndotnet new install Sekiban.Pure.Templates\ndotnet new sekiban-orleans-aspire -n YourProjectName\n```\n\n### Cloud Deployment\n\nDCB supports both Azure and AWS:\n\n| Component | Azure | AWS |\n|-----------|-------|-----|\n| Event Store | Cosmos DB / PostgreSQL | DynamoDB |\n| Snapshots | Azure Blob Storage | Amazon S3 |\n| Orleans Clustering | Azure Table / Cosmos DB | RDS PostgreSQL |\n| Orleans Streams | Azure Queue | Amazon SQS |\n\n## What is DCB?\n\n**Dynamic Consistency Boundary (DCB)** replaces rigid per-aggregate transactional boundaries with a context-sensitive consistency boundary based on event tags. Instead of maintaining multiple streams and coordinating cross-aggregate invariants via sagas, DCB uses a single event stream per bounded context where each event carries tags representing affected entities.\n\nKey benefits:\n- **Flexible boundaries**: Define consistency scope per command, not per aggregate\n- **No saga complexity**: Cross-entity invariants without compensating events\n- **Optimistic concurrency**: Tag-based conflict detection\n- **Scalable**: Actor model integration with Microsoft Orleans\n\nLearn more at [dcb.events](https://dcb.events)\n\n## Documentation\n\n- **Website**: [sekiban.dev](https://www.sekiban.dev/)\n- **DCB Documentation**: [docs/dcb_llm](./docs/dcb_llm/) (English) | [docs/dcb_llm_ja](./docs/dcb_llm_ja/) (日本語)\n- **Pure Documentation**: [docs/llm](./docs/llm/) (English) | [docs/llm_ja](./docs/llm_ja/) (日本語)\n\n## MCP (Model Context Protocol)\n\nSekiban provides MCP support for AI coding assistants:\n\n```bash\nclaude mcp add sekibanDocument --transport sse https://sekiban-doc-mcp.azurewebsites.net/sse\n```\n\n## NuGet Packages\n\n### DCB Packages (Recommended)\n\n| Package | Description |\n|---------|-------------|\n| [Sekiban.Dcb.Core](https://www.nuget.org/packages/Sekiban.Dcb.Core) | Core DCB framework |\n| [Sekiban.Dcb.Orleans.WithResult](https://www.nuget.org/packages/Sekiban.Dcb.Orleans.WithResult) | Orleans integration |\n| [Sekiban.Dcb.Postgres](https://www.nuget.org/packages/Sekiban.Dcb.Postgres) | PostgreSQL event store |\n| [Sekiban.Dcb.CosmosDb](https://www.nuget.org/packages/Sekiban.Dcb.CosmosDb) | Cosmos DB event store |\n| [Sekiban.Dcb.DynamoDB](https://www.nuget.org/packages/Sekiban.Dcb.DynamoDB) | DynamoDB event store |\n| [Sekiban.Dcb.BlobStorage.AzureStorage](https://www.nuget.org/packages/Sekiban.Dcb.BlobStorage.AzureStorage) | Azure Blob snapshots |\n| [Sekiban.Dcb.BlobStorage.S3](https://www.nuget.org/packages/Sekiban.Dcb.BlobStorage.S3) | S3 snapshots |\n\n### Legacy Packages\n\nLegacy Sekiban.Core and Sekiban.Pure packages are available on NuGet but are no longer recommended for new projects. See [core_main branch](https://github.com/J-Tech-Japan/Sekiban/tree/core_main) for legacy documentation.\n\n## Sponsors\n\nSekiban is Apache 2.0 open source. Support us via [GitHub Sponsors](https://github.com/sponsors/J-Tech-Japan).\n\n\u003cp align=\"center\"\u003e\n  \u003ch3 align=\"center\"\u003eSpecial Sponsor\u003c/h3\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca target=\"_blank\" href=\"https://www.jtsnet.co.jp\"\u003e\n  \u003cimg alt=\"special sponsor jts\" src=\"./docs/images/jtslogo.png\" width=\"500\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## About\n\n**J-Tech Japan (株式会社ジェイテックジャパン)** has been developing Sekiban since 2022.\n\n\u003cp align=\"center\"\u003e\n  \u003ca target=\"_blank\" href=\"https://www.jtechs.com/japan/\"\u003e\n  \u003cimg alt=\"developer J-Tech Japan.\" src=\"./docs/images/jtechjapanlogo.svg\" width=\"500\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## Support\n\nFor training or support, contact [sekibanadmin@jtechs.com](mailto:sekibanadmin@jtechs.com).\n\n- [Contribution Guidelines](./CONTRIBUTING.md)\n- [Code of Conduct](./CODE_OF_CONDUCT.md)\n\n## Contributors\n\n\u003ca href=\"https://github.com/J-Tech-Japan/Sekiban/graphs/contributors\"\u003e\n  \u003cimg alt=\"contributors\" src=\"https://contrib.rocks/image?repo=J-Tech-Japan/Sekiban\"/\u003e\n\u003c/a\u003e\n\n## License\n\nApache 2.0 - [See License](./LICENSE)\n\nCopyright (c) 2022- J-Tech Japan\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fj-tech-japan%2Fsekiban","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fj-tech-japan%2Fsekiban","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fj-tech-japan%2Fsekiban/lists"}