{"id":15048680,"url":"https://github.com/greyovo/markditorapp","last_synced_at":"2025-04-10T01:33:17.420Z","repository":{"id":223885236,"uuid":"742398794","full_name":"greyovo/MarkditorApp","owner":"greyovo","description":"✍️ Yet another WYSIWYG Markdown editor written in TypeScript and Tauri. Aiming to be an open-source alternative to Typora. (🤗WIP)","archived":false,"fork":false,"pushed_at":"2024-05-02T17:07:50.000Z","size":20363,"stargazers_count":16,"open_issues_count":6,"forks_count":4,"subscribers_count":4,"default_branch":"dev","last_synced_at":"2025-03-24T03:11:32.931Z","etag":null,"topics":["electron","markditor","markdown","markdown-editor","react","tauri","typora","vditor","wysiwyg","wysiwyg-editor"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/greyovo.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-12T11:43:45.000Z","updated_at":"2025-03-11T09:46:14.000Z","dependencies_parsed_at":"2024-05-02T05:29:05.103Z","dependency_job_id":"cf93314b-8b13-4189-ab02-97cfa21160bf","html_url":"https://github.com/greyovo/MarkditorApp","commit_stats":null,"previous_names":["greyovo/markditorapp"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greyovo%2FMarkditorApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greyovo%2FMarkditorApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greyovo%2FMarkditorApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greyovo%2FMarkditorApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/greyovo","download_url":"https://codeload.github.com/greyovo/MarkditorApp/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248140812,"owners_count":21054353,"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":["electron","markditor","markdown","markdown-editor","react","tauri","typora","vditor","wysiwyg","wysiwyg-editor"],"created_at":"2024-09-24T21:15:10.126Z","updated_at":"2025-04-10T01:33:17.396Z","avatar_url":"https://github.com/greyovo.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Markditor\n\n\u003cp align=\"center\" style=\"margin-bottom:10px\"\u003e\n  \u003cimg src=\"./assets/logo.png\" width=\"128px\" /\u003e\n  \u003cbr\u003e\n  English | \u003ca href=\"./README.zh-CN.md\"\u003e简体中文\u003c/a\u003e\n\u003c/p\u003e\n\nYet another WYSIWYG Markdown editor written in TypeScript and Tauri. Aims to be an open-source alternative to Typora.\n\n\u003e **[Markditor]** = **[Mark]** down + e **[ditor]**.\n\u003e Supports Windows 10 / 11 by now.\n\n\u003e ⚠️ WIP. Be careful when editing your important documents.\n\n\n| light                                      | dark                                      |\n| ------------------------------------------ | ----------------------------------------- |\n| ![pic-light-0.png](assets/pic-light-0.png) | ![pic-dark-0.png](assets/pic-dark-0.png)  |\n| ![pic-light-0.png](assets/pic-light-1.png) | ![pic-light-0.png](assets/pic-dark-1.png) |\n\n## Technology Stack\n\nMarkditor is heavily based on [Vditor](https://github.com/Vanessa219/vditor), and we used a modified version of it. [(Check out repo)](https://github.com/greyovo/vditor). In addition, we also built on top of the following technology stack:\n\n- React\n- **Tauri** (preferred) / Electron\n- Zustand\n- Radix-UI\n- Tailwind CSS\n- Vite\n\n## Features\n\n- Instant-render for Markdown typing\n- User-friendly table editor\n- Auto-save within internal seconds\n- Dark mode support\n\n## Download\n\nGo to [releases](https://github.com/greyovo/MarkditorApp/releases) page.\n\n## TODOs\n\n- [ ]  Internationalization (i18n)\n- [ ]  Insert images by: dropping, pasting (automatically copy to `asset` folder)\n- [ ]  Drag \u0026 drop to: open files, or insert images\n- [ ]  Enhance file management: drag and drop to move files, watch file changes from outside, automatically save when switching windows.\n- [ ]  Source code mode\n- [ ]  Export to: PDF or HTML\n- [ ]  Support macOS, Linux (technically available, but lack of testing devices to confirm)\n\n## Project Architecture\n\n```js\n├─build           // Build assets used by electron-builder\n├─dist            // Web contents build output\n├─dist-electron   // Electron prebuilt files\n├─electron        // Electron main process\n├─public          // Public files to be used in HTML\n├─release         // Electron build output\n├─shared          // Shared types definitions between renderer and main processes\n├─src             // Front-end sources\n│  ├─assets       // Static assets, i.e., fonts\n│  ├─components   // Global components\n│  ├─feat         // Feature modules\n│  ├─ipc          // IPC communication\n│  ├─store        // Zustand stores and business logics\n│  ├─types        // Global type definitions\n│  └─utils        // Utility functions\n└─src-tauri       // Tauri backend process and build output\n```\n\n## Development\n\n\u003e Note: Markditor is initially made with Electron, **but currently Tauri is preferred.** So far Electron is still in development but has some unimplemented Platform API. See `electron/main/handler`. Electron backend may be deprecated in the future.\n\nBy encapsulating IPC communication (see `shared/platform_api.d.ts` and `src/ipc`), Markditor can be easily migrated to other backends such as Tauri.\n\nInstall dependencies:\n\n```bash\nnpm install\n```\n\nRun in dev mode:\n\n```bash\n# Run with Tauri (preferred)\nnpm run dev:tauri\n\n# Run with Electron\nnpm run dev:electron\n```\n\nBuild product:\n\n```bash\n# Build with Tauri (preferred)\nnpm run build:tauri\n\n# Build with Electron\nnpm run build:electron\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreyovo%2Fmarkditorapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgreyovo%2Fmarkditorapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreyovo%2Fmarkditorapp/lists"}