Skip to content

Project Background

This section covers core details, such as the project's goal and external links and references.


Key Takeaways


Futurist:

  • Runs in the browser, so it is cross-compatible.
  • Simplifies the process to extend the project as much as possible.
  • Learn by example through tons of examples, a component library, documentation, a blog for extended reading.

Background


Futurist started from a simple Web API interfacing concept, allowing for a electroencephalograph (EEG) headset to stream 'brainwave' data directly / privately to the browser.

Web APIs are browser-to-hardware APIs which allow for device-specific sensors / services, such as Bluetooth or NFC, to be accessed in through the browser.

This is similar to the functionality received when a site requests approval for location (GPS) data to serve localized content.

While some standards for Web APIs exist, much of the support is found specifically within Chromium-based browsers.

Chromium is an open source project from which popular browsers, such as Google Chrome, Brave, Opera, and Microsoft Edge are derived.

Considering Google Chrome alone takes more than 65% market share on mobile devices, it shouldn't be surprising that, regardless of device, Chromium-based browsers make up a majority of the web.

This leaves general compatibility of Web APIs fairly high. Futurist capitalizes on this through a fun, familiar interface / aesthetic.

But, most importantly, futurist simplifies the knowledge to effectively do so as much as possible through its component library, documentation, example applications, and extended reading.

For specific compatibility across devices, browsers, and versions, review the Web API standards.


Project Brief


Futurist provides a framework that handles the required work to deliver a desktop-like UX in the background.

Because this project works within the browser, it is immediately cross-compatible between operating systems and desktop / mobile devices.

Expectations for a typical desktop experience would include ability to open / close windows, resize them, maximize / minimize them, etc.

In the event of resizing, what are the bounds a user can resize to? Should it go off-screen?

For minimize / maximize, what is calculating the bounds of the window, or remembering the previous set of dimensions?

What about when multiple windows are opened, how should they visually be stacked? What is tracking this?

Questions like this are what futurist answers through its component library, where the functionality required to adapt to the user is done in the background.


Project Goals


Usability should be at the forethought of building any sort of interface, whether it be a mobile app or a website.

While futurist doesn't plan to replace either of those, the methods of interaction - a desktop with clickable icons and movable windows - is a tried-and-true interface most, if not all, people are familiar with.

Through this interface, and using the aforementioned component library and Web APIs, futurist is a platform that focuses on:

  • Standardization with templates: Create easily repeatable scenarios that scale.
  • Standalone applications: Create self-contained and maintained applications that can be run directly.
  • Clear examples: Providing easy-to-read examples of different use cases to spark innovation.
  • No-nonsense documentation: Includes documentation for everything, written for the layman.
  • Reducing complexity: Built to enable those with the least amount of technical knowledge to accel.