An open API service indexing awesome lists of open source software.

https://github.com/lymore01/ottr

Ottr is a distributed, persistent and concurrent task queue for Elixir, designed for reliability and scalability. It supports multiple named queues, task retries, visibility timeouts and efficient processing using GenServer, Ecto, Poolboy and OTP patterns.
https://github.com/lymore01/ottr

actor-model concurrency ecto elixir erlang otp postgresql

Last synced: about 2 months ago
JSON representation

Ottr is a distributed, persistent and concurrent task queue for Elixir, designed for reliability and scalability. It supports multiple named queues, task retries, visibility timeouts and efficient processing using GenServer, Ecto, Poolboy and OTP patterns.

Awesome Lists containing this project

README

          

# Ottr

**Ottr** is an Elixir-powered workflow automation platform for building, managing and monitoring complex workflows, tasks and condition-based actions.

## Platform Overview

### Landing Page



Keylio Auth Logo

### Login Page



Keylio Auth Logo

### Register Page



Keylio Auth Logo

### Integrations Page



Keylio Auth Logo

### Automations Page



Keylio Auth Logo

### Templates Page



Keylio Auth Logo

### Workflow (Bursts) Page



Keylio Auth Logo

### Playground



Keylio Auth Logo

---

## What is Ottr?

Ottr combines a robust task queue engine with a modern web dashboard, allowing you to:

- Automate business processes using ready-made automations and customizable templates
- Integrate with popular services (Slack, Stripe, Notion and more)
- Design and monitor workflows visually
- Manage tasks, conditions and retries with ease

---

## Features

- **Web Dashboard**: Visual interface for managing workflows, automations and integrations
- **Integrations**: Connect with popular services like Slack, Stripe, Notion and more
- **Automations**: One-click, ready-to-use workflows for common business needs
- **Templates**: Customizable workflow blueprints to jumpstart your automation
- **Task Queues**: Easily create and manage queues for background processing
- **Conditional Logic**: Build workflows with conditional steps and branching
- **Monitoring & Retry**: Track, retry and observe task execution with built-in telemetry
- **Extensible**: Add your own integrations and custom logic

---

## Quickstart

1. Start the Phoenix server:
```shell
mix phx.server
```

## Testing

Run the test suite with:

```shell
mix test
```

## Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.

---

## License

[MIT](LICENSE)

---

## Credits

Created by Kelly Limo. Inspired by distributed queue systems and the power of Elixir/OTP.