{"id":18157174,"url":"https://github.com/zz0-0/dial_editor_flutter","last_synced_at":"2025-03-31T21:33:14.625Z","repository":{"id":247717322,"uuid":"815805495","full_name":"zz0-0/dial_editor_flutter","owner":"zz0-0","description":"Dial Editor is a Markdown editor built using Flutter and Riverpod.","archived":true,"fork":false,"pushed_at":"2024-11-27T01:58:47.000Z","size":1055,"stargazers_count":2,"open_issues_count":8,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-16T08:34:42.915Z","etag":null,"topics":["collaborate","dart","flutter","github","markdown","markdown-editor","riverpod","student-vscode"],"latest_commit_sha":null,"homepage":"https://github.com/zz0-0/dial_editor","language":"Dart","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/zz0-0.png","metadata":{"files":{"readme":".github/README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","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-06-16T08:00:56.000Z","updated_at":"2024-12-03T07:22:28.000Z","dependencies_parsed_at":"2024-08-09T05:29:46.115Z","dependency_job_id":"a2b1c1b0-8266-4e8a-9a27-34d6eca6eaec","html_url":"https://github.com/zz0-0/dial_editor_flutter","commit_stats":null,"previous_names":["zz0-0/dial_editor","zz0-0/dial_editor_flutter"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zz0-0%2Fdial_editor_flutter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zz0-0%2Fdial_editor_flutter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zz0-0%2Fdial_editor_flutter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zz0-0%2Fdial_editor_flutter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zz0-0","download_url":"https://codeload.github.com/zz0-0/dial_editor_flutter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246544237,"owners_count":20794471,"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":["collaborate","dart","flutter","github","markdown","markdown-editor","riverpod","student-vscode"],"created_at":"2024-11-02T06:05:33.973Z","updated_at":"2025-03-31T21:33:14.611Z","avatar_url":"https://github.com/zz0-0.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📜 dial_editor_flutter\n\n**Dial Editor** is a Markdown editor built using Flutter and Riverpod.\n\n[![dial_editor](https://github.com/zz0-0/dial_editor/actions/workflows/github-actions.yml/badge.svg)](https://github.com/zz0-0/dial_editor/actions/workflows/github-actions.yml)\n\n![Alt](https://repobeats.axiom.co/api/embed/67f4dddccfa76c1d0463558d8dcf73e61daa6723.svg \"Repobeats analytics image\")\n\n## ⚠️ Disclaimer\n\n**Warning:** This project is in its early stages. Use it at your own risk.\n\n## 🚀 Features\n\n## 🛠️ To-Do\n\n\u003cdetails\u003e \u003csummary\u003eTap to expand\u003c/summary\u003e\n\n- [ ] **Markdown Support**\n  - [ ] **Markdown Parser**: Implement a parser for converting Markdown text into structured data. **Markdown Render**: Develop a renderer to display Markdown content with proper formatting.\n    - [ ] Heading (https://github.com/zz0-0/dial_editor/issues/34)\n      - [ ] Heading block (https://github.com/zz0-0/dial_editor/issues/38)\n    - [x] Bold\n    - [x] Italic\n    - [x] Bold Italic\n    - [x] Strikethrough\n    - [x] Unordered list\n      - [ ] List block (https://github.com/zz0-0/dial_editor/issues/40)\n    - [x] Ordered list\n      - [ ] List block (https://github.com/zz0-0/dial_editor/issues/40)\n    - [x] Task list\n      - [ ] List block (https://github.com/zz0-0/dial_editor/issues/40)\n    - [ ] Definition list\n      - [ ] List block (https://github.com/zz0-0/dial_editor/issues/40)\n    - [x] Horizontal rule\n    - [x] Quote\n      - [ ] Quote block (https://github.com/zz0-0/dial_editor/issues/39)\n    - [x] Emoji\n    - [x] Hightlight\n    - [x] Link\n    - [x] Image\n    - [ ] Table\n      - [ ] Table block (https://github.com/zz0-0/dial_editor/issues/8)\n    - [x] Code\n      - [ ] Code block (https://github.com/zz0-0/dial_editor/issues/6)\n    - [ ] Footnote (https://github.com/zz0-0/dial_editor/issues/11)\n    - [x] Math Equation (https://github.com/zz0-0/dial_editor/issues/19)\n      - [ ] Math Block\n    - [ ] Diagram (https://github.com/zz0-0/dial_editor/issues/9)\n      - [ ] Code block (https://github.com/zz0-0/dial_editor/issues/6)\n    - [ ] Table of content (https://github.com/zz0-0/dial_editor/issues/10)\n    - [ ] Video\n    - [ ] Page breaks\n- [ ] **Bidirectional link** (https://github.com/zz0-0/dial_editor/issues/36)\n  - [ ] Element id (https://github.com/zz0-0/dial_editor/issues/35)\n- [ ] **Keyboard Shortcut**\n  - [ ] Ctrl A: Select All\n  - [x] Key Arrow Up\n  - [x] Key Arrow Down\n  - [x] Key Arrow Left\n  - [x] Key Arrow Right\n  - [ ] Tab Indentation\n- [ ] **Mouse Selection**\n- [ ] **Editing**\n  - [ ] Desktop\n    - [x] Hit enter to create new line\n      - [ ] OrderList number\n    - [x] Delete line\n- [x] **Line Number**\n- [ ] **Folder context menu** (https://github.com/zz0-0/dial_editor/issues/34)\n- [ ] **Auto Save**\n- [ ] **Undo/Redo**\n  - [x] Currently utilizing the default editable text functionality for undo/redo.\n  - [ ] Full text undo/redo\n- [x] **Dark theme**: Theme switch\n  - [ ] **Customizable Themes**: Choose from a variety of themes to suit your style.\n    - [x] overall theme - basic dark, light theme\n    - [ ] theme color\n    - [ ] text theme\n- [ ] **Collaborative Editing**: Real-time collaboration with others.\n  - [ ] crdt\n- [ ] **Export Options**: Enable users to export Markdown files to PDF, HTML, etc. (https://github.com/zz0-0/dial_editor/issues/7)\n- [ ] **Spell Check**: Implement functionality to ensure error-free Markdown.\n- [ ] **Version Control**: Track changes and allow users to revert to previous versions. (https://github.com/zz0-0/dial_editor/issues/12)\n- [ ] **Third Party Integration**: Integrate with third-party services or APIs for extended functionality.\n- [x] **Live Preview**: See your Markdown rendered in real-time.\n- [ ] **Syntax Highlighting**: Easily distinguish between different elements of your Markdown. (https://github.com/zz0-0/dial_editor/issues/41)\n- [ ] **Keyboard Shortcuts**: Boost your productivity with handy shortcuts.\n- [ ] **Support for Extensions**: Enhance the editor with additional functionalities.\n- [ ] **Cross-Platform**: Ensure compatibility on both mobile and desktop platforms.\n  - [x] Flutter supports all platforms.\n  - [ ] Desktop UI\n  - [ ] Mobile UI\n  - [ ] Web UI\n- [ ] **Infinite Canvas**: Interchangeable markdown canvas that constructs and edits your markdown file visually (https://github.com/zz0-0/dial_editor/issues/16)\n  - [ ] standalone canvas view (https://github.com/zz0-0/dial_editor/issues/42)\n  - [ ] integrate with markdown file (https://github.com/zz0-0/dial_editor/issues/43)\n\n\u003c/details\u003e\n\n## 🖥️ Getting Started\n\n### Prerequisites\n\n- [Flutter](https://flutter.dev/docs/get-started/install) installed on your machine.\n- Knowledge of [Riverpod](https://riverpod.dev/) for state management.\n\n### Installation\n\n#### Install Visual Studio Code\n\nDownload and install Visual Studio Code from https://code.visualstudio.com/download.\n\n#### Install Flutter\n\nDownload and install Flutter SDK from https://docs.flutter.dev/get-started/install. Once you have the SDK, refer to https://flutter-ko.dev/get-started/install/windows for a comprehensive installation guide on setting up Flutter and Dart. You can find the official installation guide on the Flutter website.\n\n#### Run flutter doctor\n\nRun flutter doctor in your terminal, once you have installed Flutter on your system, it will automatically check for the necessary system requirements to run the program. These requirements may include the Android toolchain, Chrome, Visual Studio, and Android Studio.\n\n#### Install Chrome\n\nDownload and install Chrome form https://www.google.com/chrome/browser-tools/. Chrome is the default web browser utilized by Flutter when running the app.\n\n#### Install Visual Studio\n\nDownload and install Visual Studio from https://visualstudio.microsoft.com/downloads/.\n\n#### Install Android Studio\n\nDownload and install Android Studio from https://developer.android.com/studio.\n\n#### Install Android toolchain\n\nTo install Android toolchain, these steps need to be followed:\n\n1. Open Android Studio\n2. In the Menu bar, click Tools\n3. choose SDK Tools panel\n4. Tick Android SDK Command-line Tools\n5. Click Apply at bottom of the window\n\n#### Clone git repository\n\nAfter installing all the required software and tools, run flutter doctor again to validate.\nOnce you have done that, open a terminal and clone the project's Git repository using git clone https://github.com/zz0-0/dial_editor.git\n\n```bash\ngit clone https://github.com/zz0-0/dial_editor.git\ncd dial_editor\n```\n\n#### Get flutter packages\n\nUse Visual Studio Code to open the project and then run in the terminal: flutter pub get, to get all the required flutter packages.\n\n```bash\nflutter pub get\n```\n\n#### Run\n\n##### Run on android\n\nTo run the app, you can navigate to the main.dart file located under the lib directory. There are two methods to run the app. First, you can go to the bottom right corner of Visual Studio Code, click on No device and select Start Flutter Emulator. Then, locate the button group of Run, Debug, and Profile just above the main method. Clicking on Run will run the app. Alternatively, you can still be on the main.dart file and go to the top right corner of Visual Studio Code, where you'll find a button labeled Start Debugging. Click on the dropdown and select Run without Debugging.\n\n##### Run on desktop\n\n```bash\nflutter run\n```\n\nor\n\nLocate the button group of Run, Debug, and Profile just above the main method. Clicking on Run will run the app.\n\n#### Open markdown file\n\n##### Android\n\nOnce the Android emulator has launched and the app is running, you can either open an existing folder or create a new one within the app. After that, you will be able to create a new markdown file or open an existing one for editing. I have included a markdown file for you, which you can simply drag into the download folder for testing.\n\n##### Desktop\n\nOn Desktop, you can either open an existing folder or create a new one within the app which includes markdown file.\n\n#### Start typing\n\nInside the markdown file, begin writing in markdown syntax.\n\n## 🤝 Contributing\n\nContributions are welcome! Please read the [CONTRIBUTING.md](CONTRIBUTING.md) file for guidelines.\n\n1. Fork the repository.\n2. Create a new branch (`git checkout -b feature/your_feature`).\n3. Commit your changes (`git commit -m 'Add some feature'`).\n4. Push to the branch (`git push origin feature/your_feature`).\n5. Open a pull request.\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](../LICENSE) file for details.\n\n## 📬 Contact\n\nFeel free to reach out via [email](mailto:zz11009988@outlook.com) for any questions or feedback.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzz0-0%2Fdial_editor_flutter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzz0-0%2Fdial_editor_flutter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzz0-0%2Fdial_editor_flutter/lists"}