All Projects → ncthbrt → Nact

ncthbrt / Nact

Licence: apache-2.0
nact ⇒ node.js + actors ⇒ your services have never been so µ

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Nact

nact
nact ⇒ node.js + actors ⇒ your services have never been so µ
Stars: ✭ 1,003 (+18.28%)
Mutual labels:  distributed-systems, actors, akka, actor-model
protoactor-go
Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin
Stars: ✭ 4,138 (+387.97%)
Mutual labels:  distributed-systems, actors, akka, actor-model
Akka
Build highly concurrent, distributed, and resilient message-driven applications on the JVM
Stars: ✭ 11,938 (+1307.78%)
Mutual labels:  akka, actor-model, distributed-systems
Actor4j Core
Actor4j is an actor-oriented Java framework. Useful for building lightweighted microservices (these are the actors themselves or groups of them). Enhanced performance of message passing.
Stars: ✭ 48 (-94.34%)
Mutual labels:  microservices, actor-model, actors
Lagom
Reactive Microservices for the JVM
Stars: ✭ 2,590 (+205.42%)
Mutual labels:  microservices, akka, distributed-systems
Cloudi
A Cloud at the lowest level!
Stars: ✭ 352 (-58.49%)
Mutual labels:  microservices, actor-model, distributed-systems
Protoactor Dotnet
Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin
Stars: ✭ 1,070 (+26.18%)
Mutual labels:  akka, actors, distributed-systems
Akkatecture
a cqrs and event sourcing framework for dotnet core using akka.net
Stars: ✭ 414 (-51.18%)
Mutual labels:  microservices, akka, actors
Dasync
Every developer deserves the right of creating microservices without using any framework 🤍
Stars: ✭ 154 (-81.84%)
Mutual labels:  microservices, actor-model, distributed-systems
Scalecube Services
ScaleCube Services is a high throughput, low latency reactive microservices library built to scale. it features: API-Gateways, service-discovery, service-load-balancing, the architecture supports plug-and-play service communication modules and features. built to provide performance and low-latency real-time stream-processing. its open and designed to accommodate changes. (no sidecar in a form of broker or any kind)
Stars: ✭ 482 (-43.16%)
Mutual labels:  microservices, actor-model, distributed-systems
Thespian
Python Actor concurrency library
Stars: ✭ 220 (-74.06%)
Mutual labels:  actor-model, actors, distributed-systems
transit
Massively real-time city transit streaming application
Stars: ✭ 20 (-97.64%)
Mutual labels:  distributed-systems, actors, actor-model
Gosiris
An actor framework for Go
Stars: ✭ 222 (-73.82%)
Mutual labels:  actor-model, actors, distributed-systems
Protoactor Go
Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin
Stars: ✭ 3,934 (+363.92%)
Mutual labels:  akka, actor-model, actors
Orbit
Orbit - Virtual actor framework for building distributed systems
Stars: ✭ 1,585 (+86.91%)
Mutual labels:  actor-model, actors, distributed-systems
protoactor-python
Proto Actor - Ultra fast distributed actors
Stars: ✭ 78 (-90.8%)
Mutual labels:  actors, akka, actor-model
gen browser
Transparent bi-directional communication for clients, servers and more
Stars: ✭ 67 (-92.1%)
Mutual labels:  distributed-systems, actors, actor-model
reacted
Actor based reactive java framework for microservices in local and distributed environment
Stars: ✭ 17 (-98%)
Mutual labels:  distributed-systems, actors, actor-model
Akka Ddd
Akka CQRS/ES framework
Stars: ✭ 330 (-61.08%)
Mutual labels:  microservices, akka
Kontraktor
distributed Actors for Java 8 / JavaScript
Stars: ✭ 333 (-60.73%)
Mutual labels:  microservices, actors

nact Logo

nact ⇒ node.js + actors
your services have never been so µ

.github/workflows/npm-publish.yml  Coveralls DeepScan Grade

npm FOSSA Status js-semistandard-style we are reactive

Any and all feedback, comments and suggestions are welcome. Please open an issue if you find anything unclear or misleading in the documentation.

This is the repository for the javascript implementation. To view/contribute to the ReasonML code, go to http://github.com/ncthbrt/reason-nact. To contribute to the documentation, https://github.com/ncthbrt/nact.io is the place to make PRs.

Nact is redux but for the server

Servers today are very different from those even 10 years ago. So why are we still programming like it's the 90s?

Inspired by the approaches taken by Akka and Erlang, Nact is an open source Node.js framework which enables you to take control of your state to:

  • more effectively use memory
  • improve application resiliance
  • increase performance
  • reduce coupling

With out of the box support for event sourcing, and a considered implementation of the actor model, nact can work across a wide variety of domains.

Nact is no silver bullet, but it is evolving to tackle ever more demanding use cases. Perhaps one of them is yours?

To get started, head to https://nact.io

Note: Nact is currently only able to work on Node 8 and above.

The Next Branch

You might have noticed that the default branch has been changed to next. That is because Nact is undergoing a signficant rearchitecture.

The aim is to make modularity and extensibility a first class citizen of Nact, while still going to great pains as always to ensure a seamless upgrade path. This work will enable Nact to run in more contexts, such as the browser, deno and of course nact's original platform node. It will also allow for some exciting work in enabling location transparency and being able to more easily design and operate distributed architectures, especially in k8s and cloud contexts.

Of course due to the churn, and because the Nact API surface is expanding, it also seemed prudent to port the codebase over to typescript.

The changes will also require a rewrite of the documentation.

A note on regularity of commits

Nact sees daily usage by the project maintainer. The project is extremely stable and has been around for a few years. As the project made the deliberate choice to minimise dependencies, particularly runtime dependencies, there is not a huge need for updates to the project, besides for the occasional introduction of new features. This means that it can be a few months since the last commit. This does not mean the project is dead, but rather that it is working as designed.

How are you using Nact?

We would love to hear how you're using Nact. If you'd like to send feedback (bad or good) please email Natalie Cuthbert at [email protected] or join the Discord.

License

FOSSA Status

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].