{"id":30240209,"url":"https://github.com/sripkunda/cammy","last_synced_at":"2025-08-15T04:13:08.477Z","repository":{"id":44849833,"uuid":"376469594","full_name":"sripkunda/Cammy","owner":"sripkunda","description":"A GNU markdown notepad that uses natural language processing to automatically detect and add events/tasks to google calendar. ","archived":false,"fork":false,"pushed_at":"2022-01-22T00:43:16.000Z","size":695,"stargazers_count":6,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-03-21T02:27:50.608Z","etag":null,"topics":["markdown","markdown-editor","markdown-viewer","productivity","productivity-tools","todo","todolist","todolist-application"],"latest_commit_sha":null,"homepage":"https://sripkunda.github.io/Cammy","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sripkunda.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-06-13T07:26:08.000Z","updated_at":"2022-09-22T20:00:25.000Z","dependencies_parsed_at":"2022-08-29T15:41:31.970Z","dependency_job_id":null,"html_url":"https://github.com/sripkunda/Cammy","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"purl":"pkg:github/sripkunda/Cammy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sripkunda%2FCammy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sripkunda%2FCammy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sripkunda%2FCammy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sripkunda%2FCammy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sripkunda","download_url":"https://codeload.github.com/sripkunda/Cammy/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sripkunda%2FCammy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270520424,"owners_count":24599354,"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","status":"online","status_checked_at":"2025-08-15T02:00:12.559Z","response_time":110,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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-viewer","productivity","productivity-tools","todo","todolist","todolist-application"],"created_at":"2025-08-15T04:13:02.985Z","updated_at":"2025-08-15T04:13:08.461Z","avatar_url":"https://github.com/sripkunda.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"./images/cammy_cover.png\" alt=\"Cammy\" width=\"512\"/\u003e  \n\u003c/p\u003e\n\n---\n\n\u003cp align=\"center\"\u003eCammy is a GNU markdown notepad that detects and adds tasks/events to google calendar.\u003c/p\u003e\n\n\n## Download\n\nThe download page for the latest Linux/OSX/Windows installation packages can be found [here](https://github.com/sripkunda/Cammy/releases).\n\n## FAQ\n\n### What is it?\n\nCammy is a free to use, open source tool that allows you to plan out your day in a notepad-like environment while allowing you to sync your most important tasks and events with google calendar.\n\n### How does it work?\n\nCammy uses real-time natural language processing to identify dates, tasks, and events as you type. These dates and events are then parsed for important information, such as the title, duration, date, and time of the event/task. Once a match is found, Cammy will allow you to add a task to your calendar app with a single click.\n\n### Why Cammy?\n\nUnlike modern productivity tools that restrict the structure and format of your todo lists and calendars to only what is offered in the app, Cammy provides you with ultimate freedom, as if you are writing on a blank sheet of paper. This helps eliminate distractions and maintain a productive environment while working.\n\n## Screenshots / Features\n\n\u003cp\u003e\n    \u003cimg src=\"./images/cammy_editor_screenshot.png\" alt=\"Cammy Editor Screenshot (Light Theme)\" width=\"400px\"/\u003e\n    \u003cimg src=\"./images/cammy_editor_screenshot_dark.png\" alt=\"Cammy Editor Screenshot (Dark Theme)\" width=\"400px\"/\u003e\n\u003c/p\u003e\n\n\u003cp\u003e\n    \u003cimg src=\"./images/cammy_mytasks_editor_dark.png\" alt=\"Cammy Editor Screenshot Task List Example (Dark Theme)\" width=\"400px\"/\u003e\n    \u003cimg src=\"./images/cammy_mytasks_editor.png\" alt=\"Cammy Editor Screenshot - Task List Example (Light Theme)\" width=\"400px\"/\u003e\n\u003c/p\u003e\n\n- Automatic Event Recognition\n- Multiple Color Themes (Light \u0026 Dark)\n- Real-time markdown editing for productive note-taking and planning\n- Free and Open Source\n\n## Using Cammy\n\nCammy's editor is built for simplicity. The only thing you will see on the canvas is the editor window, with no additional toolbars or dialogs.\n\nThe editor uses markdown for text formatting. You can learn about markdown and how to use it [here](https://www.markdownguide.org/). _(A bubble tooltip-based toolbar for core formatting features such as headings and bullet-points is in development.)_\n\n### Event Highlight Colors\n\nRegular events and tasks are highlighted in yellow. Repeating events and tasks are highlighted in orange.\n\n### Saving and Opening Files \n\nCammy acts as a regular text editor, meaning that you can open, edit, and save new or existing files. The `File` menu has options to save and open files.\n\n### Adding events to the calendar\n\nOnce Cammy recognizes a piece of text as an event, it will automatically highlight it to indicate that it can be automatically added to your calendar (unless event recognition is turned off). There are two ways to add an event to your calendar.\n\nThe first is to press \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eShift\u003c/kbd\u003e \u003ckbd\u003eA\u003c/kbd\u003e while on the line which has a recognized event. The second is to click on the line in the editor window.\n\n### Color Themes \u0026 Appearance\n\nTo switch the color theme of the editor, navigate to the `Window` menu and click `Switch Color Theme`. Alternatively, press \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eShift\u003c/kbd\u003e \u003ckbd\u003e,\u003c/kbd\u003e on your keyboard.\n\n### Keyboard Shortcuts\n\n**Editor:**\n\n| Shortcut                                                      | Action                   |\n| ------------------------------------------------------------- | ------------------------ |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eO\u003c/kbd\u003e                  | Open File                |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eS\u003c/kbd\u003e                  | Save Current File        |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eShift\u003c/kbd\u003e \u003ckbd\u003eS\u003c/kbd\u003e | Save Current File As     |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eShift\u003c/kbd\u003e \u003ckbd\u003eA\u003c/kbd\u003e | Add to calendar          |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eShift\u003c/kbd\u003e \u003ckbd\u003e.\u003c/kbd\u003e | Toggle Event Recognition |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eShift\u003c/kbd\u003e \u003ckbd\u003e,\u003c/kbd\u003e | Switch Editor Theme      |\n\n**Markdown:**\n\n| Shortcut                                                      | Action            |\n| ------------------------------------------------------------- | ----------------- |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eB\u003c/kbd\u003e                  | Bold              |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eI\u003c/kbd\u003e                  | Italic            |\n| \u003ckbd\u003eShift\u003c/kbd\u003e \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eH\u003c/kbd\u003e | Large Heading     |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eH\u003c/kbd\u003e                  | Small Heading     |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003e-\u003c/kbd\u003e                  | Block Quote       |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eK\u003c/kbd\u003e                  | Insert Link       |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eL\u003c/kbd\u003e                  | Unordered List    |\n| \u003ckbd\u003eCtrl\u003c/kbd\u003e or \u003ckbd\u003e⌘\u003c/kbd\u003e \u003ckbd\u003eAlt\u003c/kbd\u003e \u003ckbd\u003eC\u003c/kbd\u003e   | Insert Code Block |\n\n## Credits\n\nThis project would not be possible without [EasyMDE](https://github.com/Ionaru/easy-markdown-editor), the core of the markdown editor that has been modified to fit the editing needs of Cammy's real-time markdown-preview. Cammy also uses [compromise](https://github.com/spencermountain/compromise) for natural language processing (how Cammy recognizes events, tasks, dates, etc.).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsripkunda%2Fcammy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsripkunda%2Fcammy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsripkunda%2Fcammy/lists"}