Close

analog.io web application

A project log for analog.io - A full stack IoT platform

A full stack project dedicated to easily collecting, analyzing and sharing IoT sensor data.

Luke Beno 08/17/2015 at 13:554 Comments

I'm happy to say that the analog.io web application has been successfully deployed to our servers at Digital Ocean! The site also uses ssl encryption for some added security.

The web application is developed using multiple web technologies, at the base Postgres is used as the database and a Ruby on Rails backend connects to this database. When users are not logged into the site, all pages are served directly from rails however once you create an account and log in, a AngularJS fronted is run directly in the browser and makes JSON REST API called to the backend.

Using AngularJS has a lot of advantages, it really gives a responsive feel to the website and the framework takes care of many of the low level actions that an application requires. Things like button listeners, messaging, data scoping, API management even rendering the HTML templates for the site. This not only improves user experience but also reduces overhead on the server so that more people can be served by less hardware.

The basic functionality is that when the user logs in, they are greeted with this screen:

Then if you have an existing data.sparkfun.com stream, you can import it into the tool by clicking "Import Stream" and then entering the public key from Sparkfun. After clicking OK, analog.io will automatically.

Besides importing streams, analog.io also allows you to look for other peoples data streams. It is also location aware so it can show where various streams are located using google maps. Here are are all of the streams created by analog.io users in the US:

You may also search by category, for example, there are over 16 streams at analog.io that are currently measuring temperature:

That should be enough for the first update but there are plenty more features as well. Right now there are 308 people who have signed up for analog.io accounts and the number grows each day. There is also data from 25 countries!

Discussions

Nicolás Rodríguez T wrote 01/26/2016 at 22:26 point

 is the web open to log in every body?

  Are you sure? yes | no

raenrfm wrote 01/22/2016 at 00:14 point

Can I ask a stupid question?  I notice their is a delete key but I have no idea how to actually delete a stream and start over...

  Are you sure? yes | no

juke wrote 08/25/2015 at 14:36 point

is it open source ? 

  Are you sure? yes | no

Luke Beno wrote 08/26/2015 at 18:53 point

Good question,

At the moment, the web application is not open source.  I would like to make as much of this project open source as possible but I'm hesitant for the web application for a few reasons. 
First because it relies on theme templates that are licensed and not open source themselves so I have a natural conflict there.  
The next reason is that I'd like to have something to base a business off of.  I know there are examples of 100% open source companies but I don't think that I've reached that critical mass yet.  Perhaps if I can dedicate more time to application development then I can always run faster than competition but I'm not there yet.
As for everything else related to the analog.io project, the hardware is 100% open, firmware for this hardware will be as well.  The phant.io backend is also open source.
I'm a big fan of open source and benefited from it greatly, I'm still trying to find the perfect balance that protects the work that I've done and future potential but also help out the community.

  Are you sure? yes | no