Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dtinth/pushnot
Personal Push Notification Server
https://github.com/dtinth/pushnot
express leveldb nodejs zeromq
Last synced: about 2 months ago
JSON representation
Personal Push Notification Server
- Host: GitHub
- URL: https://github.com/dtinth/pushnot
- Owner: dtinth
- Created: 2013-11-25T14:24:20.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2014-04-08T09:03:48.000Z (almost 11 years ago)
- Last Synced: 2024-05-02T06:07:31.682Z (8 months ago)
- Topics: express, leveldb, nodejs, zeromq
- Language: JavaScript
- Homepage: http://me.dt.in.th/page/pushnot/
- Size: 131 KB
- Stars: 71
- Watchers: 8
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
pushnot
=======![Screenshot](http://me.dt.in.th/images/pushnot-Screenshot2.png)
Thai's personal push notification server written in Node.js. A combination of:
* [zephyros][] for alerts and [node-zephyros][] for a promise-based Node.js interface.
* [express][] for building HTTP API.
* [ursa][] for encrypting the Notification text.
* [zeromq][] and [zeromq.node][] for pubsub server.
* [leveldb][] and [node-levelup][] for local database.
* [growl][] and [node-growl][] for another notification system.
* [hawk][] for HTTP authentication so that I don't have to roll my own.The Components
--------------![Overview](http://me.dt.in.th/images/pushnot.png)
It consists of several components:
### The Server
* lets the client send a notification to the server
* publish the latest notification ID through a zeromq pubsub socket.
* lets subscribers get the notification data through an HTTP api.### The Client
* encrypts the notification message and post it to the server
### The CLI
* a command line interface to the client.
lets user type `pushnot app_name message` to send a push notification,
for use in shell scripts.### The Subscriber
* a zephyros script that subscribes to new notification messages
and display an alert and send to growl.Getting Started
---------------Read the [blog post](http://me.dt.in.th/page/pushnot/) for how to install.
[zephyros]: https://github.com/sdegutis/zephyros
[node-zephyros]: https://github.com/danielepolencic/node-zephyros
[express]: http://expressjs.com/
[ursa]: https://github.com/Obvious/ursa
[zeromq]: http://zeromq.org/
[zeromq.node]: https://github.com/JustinTulloss/zeromq.node
[leveldb]: http://code.google.com/p/leveldb/
[levelup]: https://github.com/rvagg/node-levelup
[growl]: http://growl.info/
[node-growl]: https://github.com/visionmedia/node-growl
[hawk]: https://github.com/hueniverse/hawk