glowingwire / flatsheet

A realtime editor for curating data.

Home Page:http://flatsheet.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

flatsheet

A realtime editor for curating data.

Current status

This version of Flatsheet is an in-progress rewrite using Node.js. The first version of Flatsheet was a Ruby on Rails prototype.

Many aspects of the project are incomplete, but things are far enough along that it will be useful if you want to install it and experiment in a development environment.

Want to see an early demo of the real-time editor? Go here: http://flatsheet-realtime.herokuapp.com/

Todos:

Open issues represent current todo list: github.com/flatsheet/flatsheet/issues

Contributing

  • Tasks are run using npm run scripts. Review the scripts object in the package.json file for details.
  • Files in the public directory are generated by npm scripts
  • Fork this repository.
  • npm install
  • npm run watch to build css & browser js
  • npm start to start the server
  • Create a branch for your changes.
  • Include tests if applicable.
  • Add/edit documentation for any changes.
  • Submit a pull request.

Getting started

Installation

  • Clone this repository git@github.com:flatsheet/flatsheet.git
  • Change directory cd flatsheet
  • Install dependencies with npm install

File/folder setup

  • Navigate to the root directory of the project and run mkdir data to create the directory the db will live in.
  • Copy the example config file:
    • cp config.example.js config.js
    • Edit the values to suit your purpose
  • Generate js & css files for public folder: npm run bundle

Create an admin user

  • Create an admin account by running ./bin/flatsheet account create-admin. You'll be prompted for email, username, & password.
  • You can run ./bin/flatsheet account list to see that your admin account was created.

Create a sheet

Through the UI

  • Log in
  • Click the New blank sheet button

From the command line

  • Import a json file: ./bin/flatsheet sheet add tests/data/coworking.json
  • Check out that coworking.json example file. Make sure your file has the same format
  • Then you can run ./bin/flatsheet sheet list to see that your sheet has been added.

Start the server

  • Now run npm start to start the server.
  • In development you can watch the css & js using npm run watch.
  • Go to http://127.0.0.1:3333 and log in with the admin account credentials.
  • You should now see the example data set, and be able to click it to go to the editor.
  • NOTE: the editor in this version is not currently fully functional!

Invite users

  • Navigate to http://127.0.0.1:3333/account/invite
  • Enter email addresses, one address per line
  • Click "Send invitation"
  • Users will receive an email with a link they can click to create accounts

Support

This project is supported in part by a code sprint grant from OpenNews.

More info at the Flatsheet blog.

License

MIT

About

A realtime editor for curating data.

http://flatsheet.io