A simple server for push notifications via Matrix (and a minimalistic alternative to Pushover and Gotify with a strong focus on security) 🚀📯
Find a file
2020-08-04 23:38:46 +02:00
api Do not expose password hashes over API 2020-08-04 23:38:46 +02:00
assert Partially implement updates of models 2020-08-02 02:46:38 +02:00
authentication Implement retrieving of user data 2020-08-04 18:42:03 +02:00
configuration Increase default parameters for Argon2 2020-07-31 20:06:36 +02:00
database Implement retrieving of user data 2020-08-04 18:42:03 +02:00
dispatcher Implement updating of channels 2020-08-03 11:18:46 +02:00
model Handle unbound members when binding request 2020-08-03 15:37:16 +02:00
router Implement retrieving of user data 2020-08-04 18:42:03 +02:00
runner Add configuration for HTTP and debug mode 2020-07-31 20:04:33 +02:00
.dockerignore Add simplistic Dockerfile 2020-07-27 22:05:00 +02:00
.editorconfig Initialize repository 2020-07-26 00:32:13 +02:00
.gitignore Add configuration for Travis CI 2020-07-26 15:27:36 +02:00
.travis.yml Try to fix Docker login issue 2020-07-31 23:54:09 +02:00
app.go Implement changing of passwords 2020-08-02 14:45:24 +02:00
Dockerfile Use Alpine Linux as base for Docker image 2020-07-31 22:52:30 +02:00
go.mod Replace bcrypt with Argon2 2020-07-27 21:48:41 +02:00
go.sum Replace bcrypt with Argon2 2020-07-27 21:48:41 +02:00
LICENSE Initialize repository 2020-07-26 00:32:13 +02:00
Makefile Add script for deployment on Docker Hub 2020-07-31 23:35:08 +02:00
README.md Add link to Docker Hub in README.md 2020-08-01 01:14:54 +02:00

Build status Docker Pulls License

About

PushBits is a relay server for push notifications. It enables your services to send notifications via a simple web API, and delivers them to you through various messaging services.

The vision is to have compatibility with Gotify on the sending side, while on the receiving side established services are used. This has the advantages that

  • sending plugins written for Gotify (like those for Watchtower and Jellyfin) as well as
  • receiving clients written for the messaging service can be reused.

For now, only the Matrix protocol is supported, but support for different services like Telegram could be added in the future. I am myself experimenting with Matrix currently because I like the idea of a federated, synchronized but still end-to-end encrypted protocol.

The idea for this software and most parts of the initial source are heavily inspired by Gotify. Many thanks to jmattheis for his well-structured code.

Usage

PushBits is meant to be self-hosted. You are advised to install PushBits behind a reverse proxy and enable TLS.

At the moment, there is no front-end implemented. New users and applications need to be created via the API. Details will be made available once the interface is more stable.

Development

PushBits is currently in alpha stage. The API is neither stable, nor is provided functionality guaranteed to work. Stay tuned! 😉