{"id":18320222,"url":"https://github.com/gedex/yet-another-simple-note","last_synced_at":"2025-04-05T22:31:50.145Z","repository":{"id":17574386,"uuid":"20377819","full_name":"gedex/yet-another-simple-note","owner":"gedex","description":"Go Martini powered REST API and Backbone","archived":false,"fork":false,"pushed_at":"2014-11-21T17:50:52.000Z","size":955,"stargazers_count":28,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-04T15:22:26.319Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gedex.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-06-01T13:24:23.000Z","updated_at":"2023-09-16T01:44:46.000Z","dependencies_parsed_at":"2022-09-03T00:21:30.303Z","dependency_job_id":null,"html_url":"https://github.com/gedex/yet-another-simple-note","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/gedex%2Fyet-another-simple-note","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gedex%2Fyet-another-simple-note/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gedex%2Fyet-another-simple-note/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gedex%2Fyet-another-simple-note/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gedex","download_url":"https://codeload.github.com/gedex/yet-another-simple-note/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247411237,"owners_count":20934650,"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-11-05T18:15:34.931Z","updated_at":"2025-04-05T22:31:48.494Z","avatar_url":"https://github.com/gedex.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Yet Another Simple Note\n=======================\n\nYet another Martini-powered RESTful API with Backbone-powered client consuming\nthe API.\n\n## Screenshot\n\n\u003cimg src=\"./screenshot.png\" alt=\"screenshot\"\u003e\n\n## Requirements\n\n* Go\n* Grunt (for building assets)\n\n## Run Locally\n\n1. Clone this repo\n   ```\n   git clone git@github.com:gedex/simple-note.git\n   ```\n\n2. Build everything\n   ```\n   make \u0026\u0026 make run\n   ```\n\nI've included `dist` assets, that's generated by Grunt, in this repo. In case\nyou don't have Grunt installed, running `make run` should starts the server. Or\nyou can run in development mode with `SIMPLE_NOTE_DEV=1 make run`.\n\n## REST API\n\nAll API access is prefixed with `/api/v1`. By default, server is using port `8000`.\nThe full url of a single resource would be `http://localhost:8000/api/v1/resource`,\nfor example notes resource is located at `http://localhost:8000/api/v1/notes`.\n\n### Notes\n\n#### List notes\n\n```\nGET /notes\n```\n\n**Responses**\n\n```\nHTTP/1.1 200 OK\nContent-Type: application/json; charset=UTF-8\nContent-Length: 764\nDate: Sat, 07 Jun 2014 09:44:10 GMT\n\n[\n    {\n        \"content\": \"This is awesome note #1.\\n========================\\n\\nLets try with *Markdown*.\",\n        \"content_html\": \"\u003ch1\u003eThis is awesome note #1.\u003c/h1\u003e\\n\\n\u003cp\u003eLets try with \u003cem\u003eMarkdown\u003c/em\u003e.\u003c/p\u003e\\n\",\n        \"id\": 1,\n        \"tags\": [\n            {\n                \"id\": 1,\n                \"name\": \"awesome\"\n            },\n            {\n                \"id\": 2,\n                \"name\": \"note\"\n            },\n            {\n                \"id\": 3,\n                \"name\": \"example\"\n            }\n        ],\n        \"title\": \"Example Note #1 With Long Long Title\"\n    },\n    {\n        \"content\": \"This is awesome note #2\",\n        \"content_html\": \"\u003cp\u003eThis is awesome note #2\u003c/p\u003e\\n\",\n        \"id\": 2,\n        \"tags\": [\n            {\n                \"id\": 1,\n                \"name\": \"awesome\"\n            },\n            {\n                \"id\": 2,\n                \"name\": \"note\"\n            }\n        ],\n        \"title\": \"Example Note #2\"\n    },\n    {\n        \"content\": \"This is awesome note #3\",\n        \"content_html\": \"\u003cp\u003eThis is awesome note #3\u003c/p\u003e\\n\",\n        \"id\": 3,\n        \"tags\": [\n            {\n                \"id\": 1,\n                \"name\": \"awesome\"\n            }\n        ],\n        \"title\": \"Example Note #3\"\n    }\n]\n```\n\n#### Get a single note\n\n```\nGET /notes/:id\n```\n\n**Responses**\n\n```\nHTTP/1.1 200 OK\nContent-Type: application/json; charset=UTF-8\nContent-Length: 387\nDate: Sat, 07 Jun 2014 09:45:44 GMT\n\n{\n    \"content\": \"This is awesome note #1.\\n========================\\n\\nLets try with *Markdown*.\",\n    \"content_html\": \"\u003ch1\u003eThis is awesome note #1.\u003c/h1\u003e\\n\\n\u003cp\u003eLets try with \u003cem\u003eMarkdown\u003c/em\u003e.\u003c/p\u003e\\n\",\n    \"id\": 1,\n    \"tags\": [\n        {\n            \"id\": 1,\n            \"name\": \"awesome\"\n        },\n        {\n            \"id\": 2,\n            \"name\": \"note\"\n        },\n        {\n            \"id\": 3,\n            \"name\": \"example\"\n        }\n    ],\n    \"title\": \"Example Note #1 With Long Long Title\"\n}\n```\n\n#### List notes tagged particular tag specified by tag id\n\n```\nGET /notes/tag/:id\n```\n\n**Responses**\n\n```\nHTTP/1.1 200 OK\nContent-Type: application/json; charset=UTF-8\nContent-Length: 764\nDate: Sat, 07 Jun 2014 09:46:49 GMT\n\n[\n    {\n        \"content\": \"This is awesome note #1.\\n========================\\n\\nLets try with *Markdown*.\",\n        \"content_html\": \"\u003ch1\u003eThis is awesome note #1.\u003c/h1\u003e\\n\\n\u003cp\u003eLets try with \u003cem\u003eMarkdown\u003c/em\u003e.\u003c/p\u003e\\n\",\n        \"id\": 1,\n        \"tags\": [\n            {\n                \"id\": 1,\n                \"name\": \"awesome\"\n            },\n            {\n                \"id\": 2,\n                \"name\": \"note\"\n            },\n            {\n                \"id\": 3,\n                \"name\": \"example\"\n            }\n        ],\n        \"title\": \"Example Note #1 With Long Long Title\"\n    }\n]\n```\n\n#### Create a note\n\n```\nPOST /notes\n```\n\n**Example Request**\n\n```\n{\n    \"content\": \"test note\",\n    \"title\": \"test\"\n}\n```\n\n**Responses**\n\n```\nHTTP/1.1 201 Created\nContent-Type: application/json; charset=UTF-8\nContent-Length: 113\nDate: Sat, 07 Jun 2014 09:49:55 GMT\n\n{\n    \"content\": \"test note\",\n    \"content_html\": \"\u003cp\u003etest note\u003c/p\u003e\\n\",\n    \"id\": 4,\n    \"tags\": null,\n    \"title\": \"test\"\n}\n```\n\n#### Edit a note\n\n```\nPUT /notes/:id\n```\n\n**Example Request**\n\n```\n{\n    \"content\": \"updated content\",\n    \"tags\": [\n        {\n            \"name\": \"new tag\"\n        }\n    ],\n    \"title\": \"updated title\"\n}\n```\n\n**Responses**\n\n```\nHTTP/1.1 200 OK\nContent-Type: application/json; charset=UTF-8\nContent-Length: 157\nDate: Sat, 07 Jun 2014 09:52:43 GMT\n\n{\n    \"content\": \"updated content\",\n    \"content_html\": \"\u003cp\u003eupdated content\u003c/p\u003e\\n\",\n    \"id\": 1,\n    \"tags\": [\n        {\n            \"id\": 4,\n            \"name\": \"new tag\"\n        }\n    ],\n    \"title\": \"updated title\"\n}\n```\n\n#### Delete a note\n\n```\nDELETE /notes:id\n```\n\n**Responses**\n\n```\nHTTP/1.1 204 No Content\nContent-Type: application/json; charset=UTF-8\nContent-Length: 2\nDate: Sat, 07 Jun 2014 09:54:32 GMT\n```\n\n### Tags\n\n#### List tags\n\n```\nGET /tags\n```\n\n**Responses**\n\n```\nHTTP/1.1 200 OK\nContent-Type: application/json; charset=UTF-8\nContent-Length: 102\nDate: Sat, 07 Jun 2014 09:55:07 GMT\n\n[\n    {\n        \"id\": 1,\n        \"name\": \"awesome\"\n    },\n    {\n        \"id\": 2,\n        \"name\": \"note\"\n    },\n    {\n        \"id\": 3,\n        \"name\": \"example\"\n    },\n    {\n        \"id\": 4,\n        \"name\": \"new tag\"\n    }\n]\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgedex%2Fyet-another-simple-note","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgedex%2Fyet-another-simple-note","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgedex%2Fyet-another-simple-note/lists"}