Unfortunately I don't have time to properly submit a pull request (plus I'm not familar with coffeescript just yet), but I'd like to make a quick suggestion.
In order for the server to be able to properly restrict the file size being upload, I'd like to suggest that the file's size be added to the query string when fetching the signed url. A parameter such as s3_object_size would be most useful.
Also, now the server has enough info to be able to accept or reject an upload based on mime type and file size, it would be great if it could also return a message to be displayed to the user, indicating perhaps why the file failed to upload. I.e. "File is larger than xMB" or "File must be of type png, jpg, gif".