elog open source library
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
api Bug fix (FileTreeView) Feb 3, 2015
controller Bug fix (FileTreeView) Feb 3, 2015
model New SensorStatisticsDataView Jan 21, 2015
store New SensorStatisticsDataView Jan 21, 2015
view Bug fix (FileTreeView) Feb 3, 2015
LICENSE update license Nov 24, 2014
README.md Update README.md Oct 8, 2018


eLog client library

This is a collection of eLog UI components. eLog libarries were first released in 2010 and have grown up since then. Its API usage and examples are provided with a rich documentation and in-line demos. Please visit the documentation site at eLog documentation and check the detail there. In case of Q&A, please create an issue page here. eLog UI uses the open source Sencha Touch framework.

API Documentation

See http://www.elifelog.org/lab/elog_doc


On-line Demo

On-line demo is available at (http://elifelog.org/lab/elog/examples/mediamanager/).

Video Demos

See our list of video demos

Complex event pattern editor Composite Key-value-map viewer Composite GPS path image view
Complex event pattern editor  Composite Key-value-map viewer Composite GPS path image view
Composite GPS cluster image view Composite thumbnaild and slideshow view Composite GPS data path viewer
Composite GPS cluster image view  Composite thumbnaild and slideshow view Composite GPS data path viewer
Clustered GPS view GPS path view Image thumbnail view
Clustered GPS view  GPS path view Image thumbnail view
Image slideshow Image cover flow view Data manager
Clustered GPS view  GPS path view Image thumbnail view

Getting Started with eLog APIs

The below figure gives an abstract view of eLog service structure. It basically reads external sources and parse for the data analysis and then save the result back to the store to archive user's life logs. External clients connected to the server through HTTP/JSON call can access archived lifelog. Our APIs supports all these process from both server and client sides.

Let us describe the setup procedure for both cases. This guide will explain the setup procedure for both server and client services. FYI, The communication between the server and GUI is pure HTTP/JSON based REST service. This makes the eLog UI and server componenet are completely independent. If you have existing servers, you may adopt your web service and modify the interface to work with eLog UI.

Prepare UI Development Environment

The current UI library is developed on top of Sencha Touch. We recommend to use Sencha's developer tool Sencha Cmd and follow its instruction to build up an App. For web App developer, belows are prerequesite software for the development.

  1. Java SE Runtime Environment is required to run Sencha Cmd.
  2. Ruby is needed for Sencha Cmd to create the compiled CSS used by Sencha Touch.
  3. Download the latest Sencha Cmd which provides a full set of App management features.
  4. If you prefer integrated development environment, you may use Aptana. For code assist for Sencha Touch, refer http://stackoverflow.com/questions/23691570/code-completion-sencha-aptana-studio-3
  5. Download Sencha Touch SDK. Let us assume the installing directory /anydirectory/sdk/. Then download and unzip Sencha Touch to /anydirectory/sdk/touch.

For further installation detail, please also check Sencha's Installation Instruction

Download eLog UI

The GUI part of eLog libraries is available at GitHub. You may visit elog GitHub to download the zip file or clone it to your server using:

git clone https://github.com/eLifeLogTeam/elog/

External libraries

eLog UI utilizes external libraries. Download external libraries if needed. First create a sub directory /anydirectory/sdk/library

git clone https://github.com/ajaxorg/ace-builds.git
  • IcoMoon free icons: Clone at (ex. sdk/library/IcoMoon--limited--master)
git clone https://github.com/Keyamoon/IcoMoon-Free.git
git clone https://github.com/elmasse/Ext.ux.Cover.git
git clone https://github.com/SwarmOnline/Ext.ux.TouchCalendar.git
svn checkout http://figue.googlecode.com/svn/trunk/ figue-read-only
  • jQuery: Clone at (ex. sdk/library/jquery-2.1.1)
git clone https://github.com/jquery/jquery.git
  • jquery-ui: Extract under jQuery directory (ex. sdk/library/jquery-2.1.1/jquery-ui-1.11.0/):
  • jqueryFileTree: Extract under jQuery directory (ex. sdk/library/jquery-2.1.1/jquery.fileTree/):
git clone https://github.com/daverogers/jQueryFileTree.git

Now you are all set. Start using eLog GUI libraries :)

eLog APIs Copyrights

First, thanks for using the eLog library. Before claiming any legal statements of our copyrights, let us first explain why we open this library and after I will add some formal copyright definitions.

The aim of this research is helping people manage their lifelogs and their precious memories into their own storage. Challenges are that there exists numerous types of lifelogs equal to the number of people out there. What we are trying is to prepare a fundamental tool to help them easily start logging their lifelogs in a systematic way. We also wish a user to have full and sole priviledges on their own data.

In this aspect, while all rights of codes published here are reservered to the eLifeLog.org, developers may freely use our codes for personal, educational and research purposes. However we do not allow the commercial use and the use by any company for a profit in any steps of your development and products. (Note: One exception is the user interface part which we develop atop Sencha Touch. We decide to follow the original license (GPL V3). eLog UI parts are separately published at GitHub (https://github.com/eLifeLogTeam/elog/))

You can develop and distribute Apps or software programs using our libraries but they should be distributed for free and you should not collect users's lifelog to your server or to any cloud servers in any cases by any means. In other words, your Apps or software should not collect any information (even login IPs) about the user. Your app should work independently (i.e. a strandalone App) without the need for connection or communication with your server. References to our code must be embedded in your codes and appeared in your credits. You may inform us to know either to test or to introduce your work at this web site.

For formal copyright stuffs, while keeping the above condition mandatory, eLifeLog.org APIs provided by http://www.elifelog.org is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License based on a work at www.elifelog.org.

Creative Commons License

More questions?

Feel free to post issues: https://github.com/eLifeLogTeam/elog/issues