Flatsheet status – August 2015

We’re nearing the end of our grant period for the Knight Prototype Fund. Here’s a roundup of what we’ve done so far and what we’ll be working on over the next month.

Our biggest recent announcement is the early launch of editdata.org, a free tool that lets you edit tabular data and save it to GitHub. It’s built using the same JavaScript modules we’ve written for flatsheet, and serves as a sneak preview of flatsheet.

Our initial goals for the Knight Prototype Fund grant:

  • Conduct user testing
  • Improve editor based on user testing
  • Improve JSON API
  • Write documentation

What we accomplished

  • Multiple user testing sessions
  • Substantial improvements to the flatsheet editor
  • Roughly a dozen new JavaScript/Node.js modules and contributions to many more
  • A much better sense of what our potential users need

What we learned

  • Without stronger visual cues to suggest otherwise, people will assume flatsheet is meant for spreadsheets and acts like spreadsheet software
  • How users collaborate with other users on their datasets
    • People need GitHub style forking and merging more than they need realtime editing
    • It’s very important that the accounts/permissions system is flexible and easy to use

Some of the code we’ve produced:

  • editdata.org – a simple, free tool for editing tabular data & storing it on GitHub.
  • improved editor based on user testing
  • datwrapper – a wrapper around dat for managing multiple dat instances via JS and JSON API
  • data-schema – a module for setting, validating column types
  • data-cards – an approach to interacting with tabular data that isn’t a table/spreadsheet
  • data-grid – a grid editor/viewer for tabular data
  • data-editor – a command-line tool for editing a csv file
  • data-ui – a collection of modules and resources for creating UIs for managing data
  • township – an accounts system that is its own open-source project and internally uses:
    • accounts-api – a system for managing accounts via JS and JSON API
    • accountdown-model – a wrapper around accountdown that adds additional functionality
    • a flexible permissions system inspired by GitHub’s

What we’re working on now:

  • Bundling the above independent projects into the flatsheet application
  • Launching flatsheet.io as a hosted service
  • Writing detailed documentation
  • Building additional example projects

What we plan to work on next:

  • GitHub-style fork & pull requests, with small differences that better fit the use case of “data as editorial content” and that are based upon dat’s slightly different functionality
  • Building additional compatible modules that extend flatsheet’s functionality and adapt it for different use cases
  • Supporting the community environment monitoring project heyduwamish.org by improving their moderation and admin functionality through the same JavaScript modules that are used in flatsheet.

Our ongoing goals:

  • Build a user interface that allows GitHub-like fork/merge functionality
  • Build an open-source community around dat & flatsheet
    • Through documentation, example projects, & related js libraries
  • Continue exploring flatsheet’s potential use as an open data portal
  • Continue building township, the accounts system we’ve been working on based on our experience with flatsheet.