super-simple-tasks icon indicating copy to clipboard operation
super-simple-tasks copied to clipboard

A simple task tracking app written in Coffeescript that uses localStorage and chrome.storage.sync. Both a website and a Google Chrome extension.

Super Simple Tasks

A very simple, 100% client-side tasks app that uses localStorage to save the list and Slip.js for reordering. This exists mainly so I can teach myself Coffeescript and better programming in general.

Features

  • Completely free (as in beer and in freedom)
  • No account required
  • Works offline through localStorage and chrome.storage.sync
  • 100% client-side
  • Easy to use
  • Drag and drop to reorder tasks (even works on mobile!)
  • Mobile support

Dependencies

Uses Coffeescript and Stylus along with a few other bits and pieces. Have a look in package.json to see what you'll need, and install with npm install.

Development

A Gruntfile with a 'dev' task is available for development.

Install grunt-cli (may need to use sudo)

npm install -g grunt-cli

Install the node prerequisites

npm install

Run 'grunt dev' to watch for changes. Doesn't uglify.

grunt dev

Build everything from scratch. Uglifies and cache busts.

rm -r public/
grunt build

Start server

cd public/
grunt connect

Now visit localhost:9001 to see Super Simple Tasks.

Release workflow

So I don't forget :)

  1. Manifest.json for Chrome Web Store has an updated version number
  2. app.coffee has an updated version number
  3. package.json has updated version number
  4. Delete public/ and run 'grunt build'
  5. Create a .zip of /public for the Chrome Web Store
  6. Test .zip in Chrome Apps & Extensions Developer Tool
  7. Commit and push to develop
  8. Pull request into master
  9. For a major release, create a GitHub release and tags with changelog
  10. Upload .zip file to Chrome Web Store developer dashboard