actionhero.js is a multi-transport API Server with integrated cluster capabilities and delayed tasks


Keywords
api, realtime, socket, http, https, web, game, cluster, soa, action, task, delay, service, tcp, delayed-jobs, framework, javascript, nodejs, server, socket-client, websocket
License
Apache-2.0
Install
npm install actionhero@21.0.7

Documentation

Actionhero

The reusable, scalable, and quick node.js API server for stateless and stateful applications


The Typescript verion of Actionhero is availavle by npm install actionhero@next. It should be considered beta quality.


ActionHero Logo


NPM Version Node Version NPM Dependency Status Greenkeeper badge Build Status Awesome Follow new releases Chat

Who is the ActionHero?

ActionHero is a multi-transport API Server with integrated cluster capabilities and delayed tasks. The goal of actionhero is to create an easy-to-use toolkit for making reusable & scalable APIs for HTTP, WebSockets, and more. Clients connected to an actionhero server can consume the api, consume static content, and communicate with each other. ActionHero is cluster-ready, with built in support for background tasks, 0-downtime deploys, and more. ActionHero provides a simple Async/Await API for managing every type of connection and background task.

Currently actionhero supports the following out of the box...

... and you can also make your own servers and transports.

Quick Start

# Generate a new Project
npx actionhero generate
npm install
npm run build # <--- new! I compile the TS to JS
npm run dev # <--- new! I use `ts-node` to let you develop on your ts files without compiling

# Use the actionhero CLI
(npx) actionhero generate action --name my_action
(npx) actionhero generate task --name my_task --queue default --frequency 0

# Test
npm test
# I'll run `prettier` and `build` for you first
# I handle .ts files now!

# To deploy your app
npm run build # <--- new! I compile the TS to JS
npm run start

Your new project will come with example actions, tests, and more.

Or deploy a free API server now:

Deploy to Heroku

Learn More 📚

In-depth Tutorials 🎓

Core Components

Server Types

Testing, Deployment, and Operations

Sample Projects

Who?

  • Many folks have helped to make ActionHero a reality.
  • If you want to contribute to actionhero, contribute to the conversation on github and join us on slack

Contributing

License

Apache 2.0