Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A proxy server that converts and uploads PDFs to
JavaScript Python Shell
Branch: master


latest commit 7dca18aabc
Boris Smus authored
Failed to load latest commit information.
res yes
tests yes
.gitignore updated initial commit. initial commit.
app.yaml yes
index.html yes
index.yaml initial commit. updated

A standalone Google App Engine application that uploads files to

API Description

GET /:

Provides an upload form supporting both PDF files and plaintext tabs/chords at


Takes form-encoded info about the work being uploaded:

Required fields:

  • title (string)
  • composer (string)
  • label (string)
  • notation (string)

XOR fields (exactly one must be specified):

  • text (string)
  • pdf (binary)
  • pdfurl (string)

Optional fields:

  • rating (int)

Test cases

Tests first! Write unit tests in QUnit for these cases:

  1. Not all required fields are specified.
  2. None of the XOR fields are specified.
  3. More than one of the XOR fields are specified.
  4. Invalid file is uploaded.
  5. Invalid URL is specified.
  6. PDF with N pages is uploaded, ensure that N expected URLs are created.
  7. Something is uploaded, ensure that a corresponding smusique database entry gets created.
Something went wrong with that request. Please try again.