Show HN: Teleport – Lightweight JSON types
teleport-json.org
teleport-json.org
Input validation systems are great - there's an excellent one for Python already, called Schematics (https://github.com/schematics/schematics).
Declarative schema systems are also great - JSON Schema (http://json-schema.org/) is the industry standard for JSON. The clever thing about JSON Schema is that it is itself written using JSON - so it's completely language independent. A JSON Schema is a document which you can a) version and b) upload to a schema repository like Iglu (https://github.com/snowplow/iglu). I don't see any equivalent non-language-tied schema approach in Teleport.
Thirdly, tooling to help document APIs is also a great aim - the go-to project here is Swagger (https://helloreverb.com/developers/swagger).
These are all huge problems _in themselves_, and the above solutions have lots of cross-platform tooling, developer mindshare and polyglot language support. I think you need to decide what problem you want Teleport to solve...
JS support for Swagger: https://github.com/wordnik/swagger-node-express https://github.com/wordnik/swagger-js
PHP support for Swagger: https://github.com/zircote/swagger-php
Etc. Sure Swagger is fairly opinionated about what a RESTful API should look like, but claiming it's Java-focused is off the mark.
But you can't be language-independent if you require specific languages features that aren't present in all languages and require specific language integrations that need to be written for every language. Options like the two that I mentioned before are actually language-independent.
If anything, I'm interested in knowing if Teleport schemes can be mapped to JSON schemes and vice-versa.
It seems like for the past couple of years JSON-schema has been just below some critical treshold for it to take off. Why not define models with JSON schema instead of a custom format for each web framework? Why not use JSON schemas to build forms, validation logic and admin interfaces, like https://github.com/jdorn/json-editor does? Why not document your API by specifying the JSON schema a GET request returns? (http://raml.org/ sort of does this).
Seems like a chicken and egg problem where currently the tools are not yet nice enough to merit widespread adoption, but with widespread adoption they'd get to be really nice and cross-platform.
* Teleport does everything it needs to do in less than 1000 LOC, and I'm planning to keep it small maximum portability