Swagger UI is a pretty cool JS Library to auto generate documentation for APIs. I am using it for VersionEye. The API page at VersionEye is completely running on Swagger UI: http://versioneye.com/api.
Unfortunately there is a small bug in the JavaScript. If you have 2 file upload fields with the same name, than swagger UI is always taking the last file input from the page. Even if the 2 input fields are in completely different forms. The workaround is to use different names. That’s why I had to change the file upload name for “/v1/projects/{project_key}.json” from “upload” to “project_file”.