Package: transito
Command Line Tool to Work with Transit FormatFree software: ISC licenseDocumentation:https://transito.readthedocs.org.Featuresconvert to and form json, edn, transitread content from stdin or filesUsage$ transito -h
usage: transito [-h] {t2j,j2t,e2t,t2e,http} ...

Transit CLI

positional arguments:
  {t2j,j2t,e2t,t2e,http}
    t2j                 convert transit to json
    j2t                 convert json to transit
    e2t                 convert edn to transit
    t2e                 convert transit to edn
    http                make http requests with transit data

optional arguments:
  -h, --help            show this help message and exitConversionsConvert Transit to JSON from a file:$ transito t2j examples/ex1.transit

[":keyword", "~lala", 1, 1.2, true, null, [], ["hi", "a"]]Convert Transit to JSON from stdin:$ transito t2j -

["~#list",["~:keyword","~$lala",1,1.2,true,null,[],["hi",["~#char","a"]]]]
[":keyword", "~lala", 1, 1.2, true, null, [], ["hi", "a"]]NoteThe first line is the input, then I pressed Enter and Ctrl+DPiping from another command:$ echo '["~#list",["~:keyword","~$lala",1,1.2,true,null,[],["hi",["~#char","a"]]]]' | transito t2j -

[":keyword", "~lala", 1, 1.2, true, null, [], ["hi", "a"]]Same for Edn:$ transito t2e examples/ex1.transit

(keyword lala 1 1.2 true nil [] ["hi" \a])$ echo '["~#list",["~:keyword","~$lala",1,1.2,true,null,[],["hi",["~#char","a"]]]]' | transito t2e -

(keyword lala 1 1.2 true nil [] ["hi" \a])$ transito t2e -

["~#list",["~:keyword","~$lala",1,1.2,true,null,[],["hi",["~#char","a"]]]]
(keyword lala 1 1.2 true nil [] ["hi" \a])you should get the idea, some with transit as output just in case:$ transito e2t -
(keyword lala 1 1.2 true nil [] ["hi" \a])
["~#list",["~$keyword","~$lala",1,1.2,true,null,[],["hi",["~#char","a"]]]]

$ transito t2j -
["~#list",["~$keyword","~$lala",1,1.2,true,null,[],["hi",["~#char","a"]]]]
["~keyword", "~lala", 1, 1.2, true, null, [], ["hi", "a"]]Noteto json conversions are lossy, this means that in order to not crash
when serializing keywords, symbols and chars we do a lossy serialization,
chars are strings, keywords are strings starting with : and symbols are
strings starting with ~.The idea of this translation is to provide a way to view the edn or transit
as json and shouldn’t be used to send this data to a production system.HTTP RequestsYou an make an http request that supports transit, json or edn but writting and
reading the request and response in a more readable way, for example, make a
request writing edn that will be transformed to transit before being sent, the
response will be transformed to edn if possible to make it more readable:$ echo '(increment {:value 20})' | transito http post http://localhost:8080/action e2t -

Status: 200
Content-Type: application/transit+json
Content-Length: 28

{:value [:count]}You may ask, isn’t it complected? yes, yes it is.CreditsTools used in rendering this package:Cookiecuttercookiecutter-pypackageHistory0.1.3 (2015-12-01)add support for keywords with namespaces in edn0.1.2 (2015-26-11)fix edn encoding from transit on http response0.1.1 (2015-25-11)add support for http requestsfix keyword serialization in edn0.1.0 (2015-25-11)First release on PyPI.