{"id":24408661,"url":"https://github.com/jenstornell/cursor","last_synced_at":"2025-06-27T18:10:37.703Z","repository":{"id":217043516,"uuid":"146311445","full_name":"jenstornell/cursor","owner":"jenstornell","description":"A really simple PHP Markdown self hosted editor for editing your files directly on your server.","archived":false,"fork":false,"pushed_at":"2019-03-28T13:01:31.000Z","size":9981,"stargazers_count":18,"open_issues_count":12,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-19T10:29:33.317Z","etag":null,"topics":["markdown","markdown-editor","markdown-parser"],"latest_commit_sha":null,"homepage":"","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/jenstornell.png","metadata":{"files":{"readme":"README.md","changelog":"changelog.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2018-08-27T14:46:23.000Z","updated_at":"2025-02-28T09:40:16.000Z","dependencies_parsed_at":"2024-01-14T08:12:17.632Z","dependency_job_id":"17637ba9-f1fb-4a88-8356-e5a738f1a20b","html_url":"https://github.com/jenstornell/cursor","commit_stats":null,"previous_names":["jenstornell/cursor"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jenstornell/cursor","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jenstornell%2Fcursor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jenstornell%2Fcursor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jenstornell%2Fcursor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jenstornell%2Fcursor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jenstornell","download_url":"https://codeload.github.com/jenstornell/cursor/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jenstornell%2Fcursor/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262308095,"owners_count":23291097,"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":["markdown","markdown-editor","markdown-parser"],"created_at":"2025-01-20T05:52:29.544Z","updated_at":"2025-06-27T18:10:37.682Z","avatar_url":"https://github.com/jenstornell.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cursor\n\nA PHP markdown editor with live split screen preview. Drop on your domain/server and you can start edit the files right away.\n\n![Screenshot](screenshot.png)\n\n## Users\n\nSee https://github.com/jenstornell/knock#create-a-user\n\n## Options\n\nYou need to create `options.php` and place it in the root.\n\n```php\nreturn [\n  'autosave' =\u003e true,\n  'autosave.interval' =\u003e 15,\n  'bar.bottom' =\u003e true,\n  'bar.top' =\u003e true,\n  'editor.width' =\u003e 900,\n  'filetypes.image', ['png', 'gif', 'svg', 'webp', 'jpg', 'jpeg'],\n  'filetypes.markdown', ['markdown', 'mdown', 'mkdn', 'md', 'mkd', 'mdwn', 'mdtxt', 'mdtext', 'text', 'rmd', 'txt', ''],\n  'project.css' =\u003e null,\n  'project.path' =\u003e null,\n  'preview.width' =\u003e 900,\n  'revisions.folder' =\u003e 'revisions',\n  'revisions.hide' =\u003e true,\n  'revisions.max' =\u003e 2,\n  'root.url' =\u003e null,\n  'sidebar.width' =\u003e 300,\n  'spellcheck' =\u003e false,\n];\n```\n\n| Name               | Type     | Default     | Description |\n| ------------------ | -------- | ----------- | ----------- |\n| autosave           | bool     | true        | Save the file automatically after a numer of seconds |\n| autosave.interval  | int      | 15          | If autosave is true, you can use this option to set number of seconds |\n| bar.bottom         | bool     | true        | Enable or disable the bottom bar |\n| bar.top            | bool     | true        | Enable or disable the top bar |\n| editor.width       | int      | 900         | Set the editor textarea width |\n| filetypes.image    | array    | See above   | The most common image filetypes are listed in the file tree |\n| filetypes.markdown | array    | See above   | The most common markdown filetypes are listed in the file tree |\n| project.css        | string   | null        | Set a custom css for the preview to match your project |\n| project.path       | string   | null        | You need to set the path to your project folder where your markdown files are stored |\n| preview.width      | int      | 900         | Set the preview width to match your project |\n| revisions.folder   | string   | 'revisions' | If `revisions.max` is set, you can specify a name for the revisions folder |\n| revisions.hide     | bool     | true        | If you don't want to show the revisions folder in the filetree, you can hide it |\n| revisions.max      | bool/int | 2           | To use revisions, set the number of revisions you want to keep. To disable it, set it to `false` |\n| root.url           | string   | null        | The root url from where to acess Markia |\n| sidebar.width      | int      | 300         | Set the sidebar width in case your file structure gets too wide |\n| spellcheck         | bool     | false       | Spellchecker is `false` by default but you can enable it if needed |\n\n## Libries used\n\n- [Codemirror](https://github.com/codemirror/CodeMirror) - Brings syntax hightlighting to the textarea.\n- [Knock](https://github.com/jenstornell/knock) - The authorization library for logging in.\n- [Remixicon](https://remixicon.com/) - A special thanks to [xiaochunjimmy](https://github.com/xiaochunjimmy) for not only providing a beautiful icon pack with 24px icons, but also for making custom designed 18px icons for this project.\n- [staircase.js](https://github.com/jenstornell/staircase.js) - Used for the filetree in the sidebar.\n- [Marked](https://github.com/markedjs/marked) - The markdown parser that transforms markdown to html.\n- [Message](https://github.com/jenstornell/message.js) - A library to trigger messages from ajax.\n- [TinyOptions](https://github.com/jenstornell/TinyOptions) - A library to make PHP options much simpler.\n- [TinyRoutes](https://github.com/jenstornell/TinyRouter) - A router to make better urls.\n- [Wall](https://github.com/jenstornell/wall) - The login screen.\n\n## Revisions\n\nA revision is a copy of the file you just saved. If something goes wrong, you may have revisions saved and does not need to redo so much work.\n\nBy default the file `hello.md` will be saved and copied as a revision to `revisions/hello.md/1550144390`.\n\n- You can change `revisions` to another folder name if you want.\n- `hello.md` folder will be created. Inside it all the revisions of that file will be created.\n- `1550144390` is the timestamp of the current time. It's used as a unique id. The highest number, the newer revision.\n- On `delete` the whole revisions folder will be deleted as well. That way, no garbage will be kept.\n- On `rename` the `hello.md` (in this case) folder will be renamed to always match the filename.\n\n## License\n\n### During minefield, alpha, beta and rc\n\nBefore it's relased it will be free. Hopefully all the bugs can be fixed before the release.\n\n### When released\n\n- Try first, buy later.\n- A license will cost around 25 USD / EUR.\n- You will own the license for life.\n- The license cannot be resold because it's personal.\n- Support will not be included, but you can add issues in case of trouble.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjenstornell%2Fcursor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjenstornell%2Fcursor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjenstornell%2Fcursor/lists"}