shruti

command module
v0.0.0-...-70c8363 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 27, 2015 License: MIT Imports: 11 Imported by: 0

README

shruti

What is it

Shruti is an open source notification system that lets one listen to all those updates instead of reading them themselves.

It uses Ivona service to convert text to speech.

It is meant to be used as a web based service, but its trivial to use it locally as a desktop application.

Its written in Go, builds are available for Gnu\Linux, Mac OS X and Windows.

How it works

  • There are 4 major parts of the system. Backend API server, Providers, Client and a supporting ivona microservice.
  • Backend API takes care of dumping data to postgres and serve it on demand
  • Providers collect data from various sources and push it to the backend server
  • Client manages to read these updates at loud for you
  • Ivona service makes it easier to communicate with Ivona API

btw, it also supports instant push notifications using pusher.com

Why

  • I am bored of reading everything myself. I would love if someone does the job for me
  • Something that will check
    • HN, few reddit channels
    • twitter. My timeline and few accounts I like to keep up with
    • some headlines from bbc
    • some important server statuses
    • build server status updates if important
    • New email upon arrival. From and Subject
    • Share market updates. Few important share values I care about
    • any any other sites I can think of
    • any other devices that keep track of something -... and read out loud every 15-30 minutes.
  • Hence (:

About the name

  • "shruti" is a Sanskrit term, which in the context of Indian music, is considered the smallest interval of pitch that the human ear can detect Shruti - wikipedia
  • besides, it is quite common name over here, and sounds catchy enough!

API Specification

Please read the spcefication at docs.shrutiapp.apiary.io

How to write a provider

Please read the documentation at shruti-providers

How to set it up

Please read the documentation at shruti-deployment

Goal

  • Improve and be ready for the time when IoT fianlly takes over our lives with data from everywhere
  • Seriously, take a look at these few

Contributions, thoughts are welcome :)

License

MIT License

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Godeps
_workspace/src/github.com/emicklei/go-restful
Package restful, a lean package for creating REST-style WebServices without magic.
Package restful, a lean package for creating REST-style WebServices without magic.
_workspace/src/github.com/emicklei/go-restful/swagger
Package swagger implements the structures of the Swagger https://github.com/wordnik/swagger-spec/blob/master/versions/1.2.md
Package swagger implements the structures of the Swagger https://github.com/wordnik/swagger-spec/blob/master/versions/1.2.md
_workspace/src/github.com/jmoiron/sqlx
Package sqlx provides general purpose extensions to database/sql.
Package sqlx provides general purpose extensions to database/sql.
_workspace/src/github.com/jmoiron/sqlx/reflectx
Package reflectx implements extensions to the standard reflect lib suitable for implementing marshaling and unmarshaling packages.
Package reflectx implements extensions to the standard reflect lib suitable for implementing marshaling and unmarshaling packages.
_workspace/src/github.com/lib/pq
Package pq is a pure Go Postgres driver for the database/sql package.
Package pq is a pure Go Postgres driver for the database/sql package.
_workspace/src/github.com/lib/pq/listen_example
Below you will find a self-contained Go program which uses the LISTEN / NOTIFY mechanism to avoid polling the database while waiting for more work to arrive.
Below you will find a self-contained Go program which uses the LISTEN / NOTIFY mechanism to avoid polling the database while waiting for more work to arrive.
_workspace/src/github.com/lib/pq/oid
Package oid contains OID constants as defined by the Postgres server.
Package oid contains OID constants as defined by the Postgres server.
_workspace/src/github.com/pusher/pusher-http-go
The Golang library for interacting with the Pusher HTTP API.
The Golang library for interacting with the Pusher HTTP API.
api
lib
db
models

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL