Skip to content
Marco edited this page Sep 30, 2019 · 21 revisions

GitHub Event Well

GitHub Events in physical space.

Idea

Every day millions of Developers interact with GitHub to collaborate on open source software. In this Process a Developer might get lost in his own Project. While this is good for focusing on the task at hand, it may also result in a tunneled vision. To regain a broader field of view I thought of this Application. It visualizes Events that occur during Interaction with the Systems GitHub provides.

Concept

Interactions create Events that can be accessed via the GitHub REST API or GraphQL API.

Traditionally these Events are presented to the User in a linear fashion. Think of Timelines or News feeds or lists full of Events, with Initiators and Origins in chronological order. Endless Lists of Information.

In this Application we stick to chronological order but ditch the concept of linearity, in favor of a more physical interaction with the Events.

Classic Timeline

timeline

Classic Commit History

commitHistory

Work in Progress

These are early concepts of how the Application should visualize Events. Events spawn and move up the Screen. EventsMovingUp

New Events keep spawning and old Events fall back of Screen. EventsMovingdown

Event Well

Final design as of September 2019.

eventWell

Presentation

The User is presented with a two dimensional space where Events move from bottom to top and vice versa. The Events origin from the bottom of the Screen and ascend until they reach the top. From there the Event will start to descend until it leaves the Screen.

An Event is represented by its Octicon. For example a Push-Event is shown as a .octicon-repo-push. A Comment-Event will spawn a .octicon-comment.

Icons

Every Event has a unique color determined by there ID, Actor and Type. While on Screen the User can catch a single Event and inspect it.

A caught Event is pinned on spot with a spring, its momentum will bounce it back and fourth until it comes to a rest. By using a spring instead of a pin the Event is still able to move in any direction when it collides with another Event. But will swiftly snap back to place.

To inform the User about the Event he just caught a description Card will appear.

Collapsed the card shows an avatar picture and the name of the repository that emitted the event.

UserCardClose

It can be expanded and collapsed via a toggle button on its right side When expanded the Card also shows the users name, the time the event got triggered and the Event-type.

UserCardOpen

More information could be shown here. When an event has changed the code of the repository it could show the number of added deleted or altered lines. This would require more exploration in the space of user preferences.

Events can collide with each other on there way up or down, this gives them the appearance of real physical object.