├── .dockerignore ├── .gitignore ├── Dockerfile ├── LICENSE ├── README.md ├── adapter-node ├── src │ ├── Main.idr │ └── TyTTP │ │ └── Adapter │ │ └── Node │ │ ├── Error.idr │ │ ├── HTTP.idr │ │ ├── HTTP2.idr │ │ ├── HTTPS.idr │ │ ├── Static.idr │ │ └── URI.idr ├── tests │ ├── .gitignore │ ├── runner │ │ └── Tests.idr │ ├── server │ │ ├── http │ │ │ ├── echo │ │ │ │ ├── Echo.idr │ │ │ │ ├── expected │ │ │ │ ├── input │ │ │ │ ├── run │ │ │ │ └── test.ipkg │ │ │ └── files │ │ │ │ ├── Files.idr │ │ │ │ ├── expected │ │ │ │ ├── input │ │ │ │ ├── run │ │ │ │ └── test.ipkg │ │ └── http2 │ │ │ ├── echo │ │ │ ├── Echo.idr │ │ │ ├── expected │ │ │ ├── input │ │ │ ├── run │ │ │ └── test.ipkg │ │ │ └── push │ │ │ ├── Push.idr │ │ │ ├── expected │ │ │ ├── input │ │ │ ├── run │ │ │ └── test.ipkg │ └── tests.ipkg └── tyttp-adapter-node.ipkg ├── flake.lock ├── flake.nix ├── json ├── README.md ├── src │ └── TyTTP │ │ └── HTTP │ │ ├── Consumer │ │ └── JSON.idr │ │ └── Producer │ │ └── JSON.idr ├── tests │ ├── .gitignore │ ├── json │ │ └── server │ │ │ ├── JSONServer.idr │ │ │ ├── expected │ │ │ ├── input │ │ │ ├── run │ │ │ └── test.ipkg │ ├── runner │ │ └── Tests.idr │ └── tests.ipkg └── tyttp-json.ipkg ├── pack.toml ├── src ├── TyTTP.idr └── TyTTP │ ├── Core │ ├── Context.idr │ ├── Error.idr │ ├── Request.idr │ ├── Response.idr │ ├── Routing.idr │ └── Stream.idr │ ├── HTTP.idr │ ├── HTTP │ ├── Consumer.idr │ ├── Producer.idr │ ├── Protocol.idr │ └── Routing.idr │ ├── URL.idr │ └── URL │ ├── Definition.idr │ ├── Path.idr │ ├── Search.idr │ └── Simple.idr ├── tests ├── basics │ ├── errors │ │ ├── Error.idr │ │ ├── expected │ │ ├── output │ │ ├── run │ │ └── test.ipkg │ └── url │ │ ├── Url.idr │ │ ├── expected │ │ ├── input │ │ ├── output │ │ ├── run │ │ └── test.ipkg ├── failures ├── runner │ └── Tests.idr └── tests.ipkg └── tyttp.ipkg /.dockerignore: -------------------------------------------------------------------------------- 1 | Dockerfile 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .pack/ 2 | .direnv/ 3 | node_modules/ 4 | build/ 5 | certs/ 6 | tmp/ 7 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/README.md -------------------------------------------------------------------------------- /adapter-node/src/Main.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/src/Main.idr -------------------------------------------------------------------------------- /adapter-node/src/TyTTP/Adapter/Node/Error.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/src/TyTTP/Adapter/Node/Error.idr -------------------------------------------------------------------------------- /adapter-node/src/TyTTP/Adapter/Node/HTTP.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/src/TyTTP/Adapter/Node/HTTP.idr -------------------------------------------------------------------------------- /adapter-node/src/TyTTP/Adapter/Node/HTTP2.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/src/TyTTP/Adapter/Node/HTTP2.idr -------------------------------------------------------------------------------- /adapter-node/src/TyTTP/Adapter/Node/HTTPS.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/src/TyTTP/Adapter/Node/HTTPS.idr -------------------------------------------------------------------------------- /adapter-node/src/TyTTP/Adapter/Node/Static.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/src/TyTTP/Adapter/Node/Static.idr -------------------------------------------------------------------------------- /adapter-node/src/TyTTP/Adapter/Node/URI.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/src/TyTTP/Adapter/Node/URI.idr -------------------------------------------------------------------------------- /adapter-node/tests/.gitignore: -------------------------------------------------------------------------------- 1 | failures 2 | output 3 | 4 | -------------------------------------------------------------------------------- /adapter-node/tests/runner/Tests.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/runner/Tests.idr -------------------------------------------------------------------------------- /adapter-node/tests/server/http/echo/Echo.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http/echo/Echo.idr -------------------------------------------------------------------------------- /adapter-node/tests/server/http/echo/expected: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http/echo/expected -------------------------------------------------------------------------------- /adapter-node/tests/server/http/echo/input: -------------------------------------------------------------------------------- 1 | main 2 | :q 3 | -------------------------------------------------------------------------------- /adapter-node/tests/server/http/echo/run: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http/echo/run -------------------------------------------------------------------------------- /adapter-node/tests/server/http/echo/test.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http/echo/test.ipkg -------------------------------------------------------------------------------- /adapter-node/tests/server/http/files/Files.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http/files/Files.idr -------------------------------------------------------------------------------- /adapter-node/tests/server/http/files/expected: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http/files/expected -------------------------------------------------------------------------------- /adapter-node/tests/server/http/files/input: -------------------------------------------------------------------------------- 1 | main 2 | :q 3 | -------------------------------------------------------------------------------- /adapter-node/tests/server/http/files/run: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http/files/run -------------------------------------------------------------------------------- /adapter-node/tests/server/http/files/test.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http/files/test.ipkg -------------------------------------------------------------------------------- /adapter-node/tests/server/http2/echo/Echo.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http2/echo/Echo.idr -------------------------------------------------------------------------------- /adapter-node/tests/server/http2/echo/expected: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http2/echo/expected -------------------------------------------------------------------------------- /adapter-node/tests/server/http2/echo/input: -------------------------------------------------------------------------------- 1 | main 2 | :q 3 | -------------------------------------------------------------------------------- /adapter-node/tests/server/http2/echo/run: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http2/echo/run -------------------------------------------------------------------------------- /adapter-node/tests/server/http2/echo/test.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http2/echo/test.ipkg -------------------------------------------------------------------------------- /adapter-node/tests/server/http2/push/Push.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http2/push/Push.idr -------------------------------------------------------------------------------- /adapter-node/tests/server/http2/push/expected: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http2/push/expected -------------------------------------------------------------------------------- /adapter-node/tests/server/http2/push/input: -------------------------------------------------------------------------------- 1 | main 2 | :q 3 | -------------------------------------------------------------------------------- /adapter-node/tests/server/http2/push/run: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http2/push/run -------------------------------------------------------------------------------- /adapter-node/tests/server/http2/push/test.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/server/http2/push/test.ipkg -------------------------------------------------------------------------------- /adapter-node/tests/tests.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tests/tests.ipkg -------------------------------------------------------------------------------- /adapter-node/tyttp-adapter-node.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/adapter-node/tyttp-adapter-node.ipkg -------------------------------------------------------------------------------- /flake.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/flake.lock -------------------------------------------------------------------------------- /flake.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/flake.nix -------------------------------------------------------------------------------- /json/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/json/README.md -------------------------------------------------------------------------------- /json/src/TyTTP/HTTP/Consumer/JSON.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/json/src/TyTTP/HTTP/Consumer/JSON.idr -------------------------------------------------------------------------------- /json/src/TyTTP/HTTP/Producer/JSON.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/json/src/TyTTP/HTTP/Producer/JSON.idr -------------------------------------------------------------------------------- /json/tests/.gitignore: -------------------------------------------------------------------------------- 1 | failures 2 | output 3 | 4 | -------------------------------------------------------------------------------- /json/tests/json/server/JSONServer.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/json/tests/json/server/JSONServer.idr -------------------------------------------------------------------------------- /json/tests/json/server/expected: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/json/tests/json/server/expected -------------------------------------------------------------------------------- /json/tests/json/server/input: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /json/tests/json/server/run: -------------------------------------------------------------------------------- 1 | rm -rf build 2 | 3 | pack run test.ipkg 4 | -------------------------------------------------------------------------------- /json/tests/json/server/test.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/json/tests/json/server/test.ipkg -------------------------------------------------------------------------------- /json/tests/runner/Tests.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/json/tests/runner/Tests.idr -------------------------------------------------------------------------------- /json/tests/tests.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/json/tests/tests.ipkg -------------------------------------------------------------------------------- /json/tyttp-json.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/json/tyttp-json.ipkg -------------------------------------------------------------------------------- /pack.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/pack.toml -------------------------------------------------------------------------------- /src/TyTTP.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP.idr -------------------------------------------------------------------------------- /src/TyTTP/Core/Context.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/Core/Context.idr -------------------------------------------------------------------------------- /src/TyTTP/Core/Error.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/Core/Error.idr -------------------------------------------------------------------------------- /src/TyTTP/Core/Request.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/Core/Request.idr -------------------------------------------------------------------------------- /src/TyTTP/Core/Response.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/Core/Response.idr -------------------------------------------------------------------------------- /src/TyTTP/Core/Routing.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/Core/Routing.idr -------------------------------------------------------------------------------- /src/TyTTP/Core/Stream.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/Core/Stream.idr -------------------------------------------------------------------------------- /src/TyTTP/HTTP.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/HTTP.idr -------------------------------------------------------------------------------- /src/TyTTP/HTTP/Consumer.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/HTTP/Consumer.idr -------------------------------------------------------------------------------- /src/TyTTP/HTTP/Producer.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/HTTP/Producer.idr -------------------------------------------------------------------------------- /src/TyTTP/HTTP/Protocol.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/HTTP/Protocol.idr -------------------------------------------------------------------------------- /src/TyTTP/HTTP/Routing.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/HTTP/Routing.idr -------------------------------------------------------------------------------- /src/TyTTP/URL.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/URL.idr -------------------------------------------------------------------------------- /src/TyTTP/URL/Definition.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/URL/Definition.idr -------------------------------------------------------------------------------- /src/TyTTP/URL/Path.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/URL/Path.idr -------------------------------------------------------------------------------- /src/TyTTP/URL/Search.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/URL/Search.idr -------------------------------------------------------------------------------- /src/TyTTP/URL/Simple.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/src/TyTTP/URL/Simple.idr -------------------------------------------------------------------------------- /tests/basics/errors/Error.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/tests/basics/errors/Error.idr -------------------------------------------------------------------------------- /tests/basics/errors/expected: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/tests/basics/errors/expected -------------------------------------------------------------------------------- /tests/basics/errors/output: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/tests/basics/errors/output -------------------------------------------------------------------------------- /tests/basics/errors/run: -------------------------------------------------------------------------------- 1 | rm -rf build 2 | 3 | pack run test.ipkg 4 | 5 | 6 | -------------------------------------------------------------------------------- /tests/basics/errors/test.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/tests/basics/errors/test.ipkg -------------------------------------------------------------------------------- /tests/basics/url/Url.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/tests/basics/url/Url.idr -------------------------------------------------------------------------------- /tests/basics/url/expected: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/basics/url/input: -------------------------------------------------------------------------------- 1 | main 2 | :q 3 | -------------------------------------------------------------------------------- /tests/basics/url/output: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/basics/url/run: -------------------------------------------------------------------------------- 1 | rm -rf build 2 | 3 | pack run test.ipkg 4 | 5 | 6 | -------------------------------------------------------------------------------- /tests/basics/url/test.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/tests/basics/url/test.ipkg -------------------------------------------------------------------------------- /tests/failures: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/runner/Tests.idr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/tests/runner/Tests.idr -------------------------------------------------------------------------------- /tests/tests.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/tests/tests.ipkg -------------------------------------------------------------------------------- /tyttp.ipkg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kbertalan/tyttp/HEAD/tyttp.ipkg --------------------------------------------------------------------------------