Songs I Know Ionic Implementation - Store the songs you know on your phone.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
hooks
resources
scss
www
.bowerrc
.gitignore
bower.json
config.xml
gulpfile.js
ionic.project
package.json
readme.md

readme.md

SIK Ionic App

Fourth iteration of a personal project to store the songs I've learned over the years on my smartphone.

More information about the app and screenshots can be found on my website

Background

As soon as I'm asked to play a song on my guitar I seem to instantly forget everything I've ever learned. This app is a way of quickly listing the songs I know along with lyrics and chords to give me some inspiration. Also useful to refresh on those old songs I haven't played in a while.

The second purpose of this app is to act as my version of the 'MVC Todo' app in that it is the implementation of the same idea across different frameworks, to test out capabilities.

NOTE: The app is initially empty. No song content (e.g. audio/lyrics/chords) are stored in the app itself due to possible copyright issues. All content added by the user.

Features

  • Offline local song database storage via PouchDB (IndexedDB or WebSQL)
  • Real-time synchronisation with Cloudant service (resumes whenever phone becomes online)
  • Add song lyrics (with online search)
  • Add chords sections & song lyrics (with online search)
  • Guitar chord visualisation on fretboard via jTab
  • Guitar chord playback on chord press (using the Web Audio api)
  • Attach song artwork via iTunes API
  • Song filtering

Installation

This is app is built upon the Ionic Framework and CLI. Please visit them for more information on getting started.

To Do

  • Hook introduction animation into DB loaded (instead of guessing)
  • UI animation, specifically ng-repeat items (ngAnimate?)
  • Custom chord addition/editing
  • Song store backup (via email?)
  • Song list auto-divide by artist
  • Form refinements
  • Optimise JavaScript & minify
  • Split up into more modular folder structure
  • Unit tests

Platform Requirements

  • Ionic CLI
  • Node
  • Bower
  • Gulp

Notes

Designed and tested on an iPhone 6 but should run on both Android and iOS devices.