Skip to content

pk-nb/Epoch

Repository files navigation

Epoch

A web app for viewing and sharing timelines.

This was originally a senior class project for @pk-nb, @isaachermens, and @Jwashton. The official version is hosted at epoch.tools. Feel free to give it a try!

This project is currently no longer under active development. It's a largely a functional proof of concept and may be extended in future.

screenshots

This project was intended to effectively visualize the immense amount of data that timelines can contain and make it consumable even on small screens.

Major features:

  • Viewing and creating timelines and events
  • Importing timelines from Twitter and Github
  • Works as full-screen web app on iOS and Android

If you would like to see the presentation slides on the project, they are available here.

Project Structure

This webapp uses a Rails back end and React.js/HTML5 Canvas for the front end. The Rails app should be fairly standard as far as where things are located. The client side code is all located in app/assets/javascripts/ui-components.

The front-end UI is organized into a tree of components, each keeping state at the appropriate level and passing down props down the tree. As illustrated in the following image, a top level app component holds the primary state (such as the current user and the timelines).

epochtree

The components are named according to their UI, shown in the following screenshots:

uiandtimelineview

shelfandpanel

This project uses the react-rails 1.x gem to pre-render the application server side.

Thanks

Many thanks to Prof. Robert Ordóñez and Michael Dant from the Southern Computing department for overseeing the project and acting as product owners.

Primary contributors:

About

Timelines, timelines everywhere.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published