{"action":"created","issue":{"url":"https://api.github.com/repos/labstack/echo/issues/74","labels_url":"https://api.github.com/repos/labstack/echo/issues/74/labels{/name}","comments_url":"https://api.github.com/repos/labstack/echo/issues/74/comments","events_url":"https://api.github.com/repos/labstack/echo/issues/74/events","html_url":"https://github.com/labstack/echo/issues/74","id":78385446,"number":74,"title":"Documentation Generation","user":{"login":"jpillora","id":633843,"avatar_url":"https://avatars.githubusercontent.com/u/633843?v=3","gravatar_id":"","url":"https://api.github.com/users/jpillora","html_url":"https://github.com/jpillora","followers_url":"https://api.github.com/users/jpillora/followers","following_url":"https://api.github.com/users/jpillora/following{/other_user}","gists_url":"https://api.github.com/users/jpillora/gists{/gist_id}","starred_url":"https://api.github.com/users/jpillora/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jpillora/subscriptions","organizations_url":"https://api.github.com/users/jpillora/orgs","repos_url":"https://api.github.com/users/jpillora/repos","events_url":"https://api.github.com/users/jpillora/events{/privacy}","received_events_url":"https://api.github.com/users/jpillora/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/labstack/echo/labels/enhancement","name":"enhancement","color":"eb6420"}],"state":"open","locked":false,"assignee":{"login":"vishr","id":314036,"avatar_url":"https://avatars.githubusercontent.com/u/314036?v=3","gravatar_id":"","url":"https://api.github.com/users/vishr","html_url":"https://github.com/vishr","followers_url":"https://api.github.com/users/vishr/followers","following_url":"https://api.github.com/users/vishr/following{/other_user}","gists_url":"https://api.github.com/users/vishr/gists{/gist_id}","starred_url":"https://api.github.com/users/vishr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vishr/subscriptions","organizations_url":"https://api.github.com/users/vishr/orgs","repos_url":"https://api.github.com/users/vishr/repos","events_url":"https://api.github.com/users/vishr/events{/privacy}","received_events_url":"https://api.github.com/users/vishr/received_events","type":"User","site_admin":false},"milestone":null,"comments":4,"created_at":"2015-05-20T05:49:54Z","updated_at":"2015-08-02T22:35:21Z","closed_at":null,"body":"I'm thinking of using echo for a large project and one of the requirements will be extensive documentation, it would be nice to automatically keep the code and docs in sync with something like:\r\n\r\n``` go\r\ne := echo.New()\r\n...\r\n//with cli flag, or even via another REST endpoint\r\nif generate {\r\n  //json.MarshalIndent internal echo structures (fn name, methods, urls, params, middleware, etc.)\r\n  b := e.GenerateSpec()\r\n  //display\r\n  os.Stdout.Write(b)\r\n  //or, send to documentation server\r\n  http.Post(\"...\", \"application/json\", &bytes.NewBuffer(b))\r\n}\r\n```\r\n\r\nThen the user could convert the structures into:\r\n* a https://apiary.io/ API blueprint\r\n* a http://swagger.io/ spec\r\n* a https://github.com/mashery/iodocs spec\r\n\r\nThoughts?"},"comment":{"url":"https://api.github.com/repos/labstack/echo/issues/comments/127077723","html_url":"https://github.com/labstack/echo/issues/74#issuecomment-127077723","issue_url":"https://api.github.com/repos/labstack/echo/issues/74","id":127077723,"user":{"login":"jpillora","id":633843,"avatar_url":"https://avatars.githubusercontent.com/u/633843?v=3","gravatar_id":"","url":"https://api.github.com/users/jpillora","html_url":"https://github.com/jpillora","followers_url":"https://api.github.com/users/jpillora/followers","following_url":"https://api.github.com/users/jpillora/following{/other_user}","gists_url":"https://api.github.com/users/jpillora/gists{/gist_id}","starred_url":"https://api.github.com/users/jpillora/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jpillora/subscriptions","organizations_url":"https://api.github.com/users/jpillora/orgs","repos_url":"https://api.github.com/users/jpillora/repos","events_url":"https://api.github.com/users/jpillora/events{/privacy}","received_events_url":"https://api.github.com/users/jpillora/received_events","type":"User","site_admin":false},"created_at":"2015-08-02T22:35:21Z","updated_at":"2015-08-02T22:35:21Z","body":"No worries. Since creating this I'm just using a simple wrapper around httprouter."}}