{"id":17070886,"url":"https://github.com/singpolyma/route-generator","last_synced_at":"2025-04-12T19:42:13.100Z","repository":{"id":4227849,"uuid":"5350506","full_name":"singpolyma/route-generator","owner":"singpolyma","description":"Utility to generate routes for use with yesod-routes","archived":false,"fork":false,"pushed_at":"2014-03-16T23:05:48.000Z","size":190,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-26T13:54:06.620Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://hackage.haskell.org/package/route-generator","language":"Haskell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"nathanboktae/mocha-casperjs","license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/singpolyma.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-08-09T03:00:24.000Z","updated_at":"2016-10-04T18:43:52.000Z","dependencies_parsed_at":"2022-08-20T11:30:51.647Z","dependency_job_id":null,"html_url":"https://github.com/singpolyma/route-generator","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/singpolyma%2Froute-generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/singpolyma%2Froute-generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/singpolyma%2Froute-generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/singpolyma%2Froute-generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/singpolyma","download_url":"https://codeload.github.com/singpolyma/route-generator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248625259,"owners_count":21135511,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-14T11:34:19.155Z","updated_at":"2025-04-12T19:42:13.075Z","avatar_url":"https://github.com/singpolyma.png","language":"Haskell","funding_links":[],"categories":[],"sub_categories":[],"readme":"Most of the defacto Haskell web routing libraries are either linear\nin complexity, or require lots of extra extensions, like Template\nHaskell.\n\nLuckily, yesod-routes has Yesod.Routes.Dispatch, which is a very clean,\nefficient, and extension-free router.  Writing routes out in code can,\nhowever, be quite verbose.  This utility is a code generator to produce\nroutes compatible with Yesod.Routes.Dispatch from a nice input format.\n\nExample:\n\n\u003e GET /       =\u003e home\n\u003e GET /post/: =\u003e showPost\n\u003e PUT /*      =\u003e updateSomething\n\n\u003e ./routeGenerator -r -m SomeModule routes.txt\n\nWill generate routes that map the correct HTTP verb (which you should\npass as a prepended \"path segment\" to your Dispatch) and path to\nfunctions imported from the module specified in the second parameter.\n\nA colon matches any path segment, and passes the matched segment\nthrough to the specified function, passing each match segment in order.\nThe expected type of the segment is inferred from the type of the\nfunction.  If the segment cannot be parsed as that type, the path does\nnot match.  Parsing is done with Web.PathPieces.fromPathPiece.\n\nAn asterisk at the end of the path causes rhHasMulti to be set to True,\nmeaning that any path segments after what has been specified will be\nallowed.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsingpolyma%2Froute-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsingpolyma%2Froute-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsingpolyma%2Froute-generator/lists"}