senecajs/seneca

A microservices toolkit for Node.js.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 14 minutes ago
Added to GitGenius on September 17th, 2026
Created on October 21st, 2010
Open Issues & Pull Requests: 214 (+0)
GitHub issues: Enabled
Number of forks: 308
Total Stargazers: 3,957 (+0)
Total Subscribers: 132 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 0
New in 7 days: 0
Closed in 7 days: 0
Avg open age: N/A days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Seneca is a microservices toolkit for Node.js that organizes business logic around pattern-matched commands rather than data models or dependency management.

The toolkit addresses the challenge of building distributed systems by decoupling what happens in your application from how messages are transported between services. It uses pattern matching on JSON input to route commands to handlers, allowing you to define business logic as discrete, composable operations. Transport independence means you can change how services communicate without rewriting your business logic. The core abstraction treats your application as a collection of "stuff that happens"—commands that accept JSON input and optionally return JSON output—rather than forcing you to think in terms of data models or service dependencies.

Seneca suits teams building microservice architectures who want to avoid tight coupling between services and who value flexibility in how services discover and communicate with each other. It works well for applications where you can express business requirements as discrete, pattern-matched operations. The toolkit includes built-in commands for common needs like data storage, user management, caching, and logging, plus an ecosystem of plugins for extending functionality. The project provides a guide to microservice architecture design and maintains tutorials and sample applications to help new users get started.

The project has been in production use for years and maintains an active ecosystem of plugins. Development includes tooling for reading the source code in annotated form, and the maintainers provide multiple channels for user support including GitHub issues, social media, and chat. Logs are output in JSON format to support integration with external logging services.