https://github.com/chadangelelli/potamic
Clojure message queue over Redis Protocol Streams
https://github.com/chadangelelli/potamic
clojure redis streams
Last synced: 3 days ago
JSON representation
Clojure message queue over Redis Protocol Streams
- Host: GitHub
- URL: https://github.com/chadangelelli/potamic
- Owner: chadangelelli
- License: epl-1.0
- Created: 2023-05-09T19:07:46.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-08-13T15:57:46.000Z (11 months ago)
- Last Synced: 2025-08-13T17:28:17.076Z (11 months ago)
- Topics: clojure, redis, streams
- Language: Clojure
- Homepage: https://chadangelelli.github.io/potamic
- Size: 299 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Potamic
Potamic is a message queue implementation over Redis' Stream data type. It makes it simple to read and write as multiple consumers, automatically tracking "read", "pending" and "processed" messages.
### Index
1. [Get Potamic](#get-potamic)
3. [Docs](#docs)
4. [Running Locally](#usage-locally)
5. [License](#license)
### deps.edn
> _TODO_: Publish to Clojars
```clojure
io.github.chadangelelli/potamic #:git{:tag "v0.1.67" :sha "fdb99e0"}
```
### Leiningen
> _TODO_: Add example
### Online
[https://chadangelelli.github.io/potamic](https://chadangelelli.github.io/potamic)
### Local
```shell
git clone https://github.com/chadangelelli/potamic.git
cd potamic
open docs/index.html
```
### Testing
You'll need 2 terminals open; 1 for Redis and 1 for the test runner.
**Redis:**
```shell
cd /path/to/potamic
bin/db
```
**Test Runner:**
```shell
cd /path/to/potamic
bin/test
# or
bin/test --watch
```
### REPL
```shell
cd /path/to/potamic
bin/repl
```
### Generating Docs
```shell
cd /path/to/potamic
bin/doc
```
Distributed under the [EPL v1.0](https://raw.githubusercontent.com/chadangelelli/potamic/main/LICENSE) (same as Clojure).
Copyright © 2023 Chad Angelelli