[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-10184":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":36,"readmeContent":37,"aiSummary":38,"trendingCount":16,"starSnapshotCount":16,"syncStatus":39,"lastSyncTime":40,"discoverSource":41},10184,"dillinger","joemccann\u002Fdillinger","joemccann","The last Markdown editor, ever.","https:\u002F\u002Fdillinger.io",null,"TypeScript",8251,1161,153,135,0,8,28,1,72,"MIT License",false,"master",true,[26,27,28,29,30,31,32,33,34,35],"blog","blogging","editor","ide","javascript","markdown","md","node","nodejs","writing","2026-06-12 04:00:49","\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F885053fb-b002-4168-98f5-56e583829983\" alt=\"Dillinger Banner\" width=\"100%\" \u002F>\n\u003C\u002Fp>\n\n\u003Ch1 align=\"center\">Dillinger\u003C\u002Fh1>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>The last Markdown editor you'll ever need.\u003C\u002Fstrong>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  A modern, cloud-native Markdown editor built on Next.js — designed for speed, focus, and seamless sync.\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"#quick-start\">\u003Cstrong>Get Started\u003C\u002Fstrong>\u003C\u002Fa> ·\n  \u003Ca href=\"#features\">\u003Cstrong>Features\u003C\u002Fstrong>\u003C\u002Fa> ·\n  \u003Ca href=\"#cloud-integrations\">\u003Cstrong>Integrations\u003C\u002Fstrong>\u003C\u002Fa> ·\n  \u003Ca href=\"#deployment\">\u003Cstrong>Deploy\u003C\u002Fstrong>\u003C\u002Fa>\n\u003C\u002Fp>\n\n---\n\n## ✨ Why Dillinger\n\nMost markdown editors are either:\n- bloated  \n- offline-only  \n- or lack serious developer ergonomics  \n\n**Dillinger fixes that.**\n\nIt combines:\n- ⚡ VS Code-grade editing  \n- ☁️ Native cloud storage  \n- 🧘 Distraction-free UX  \n- 🔄 Real-time rendering  \n\n---\n\n## ⚡ Quick Start\n\n```bash\nnpm install\nnpm run dev\n````\n\nOpen → [http:\u002F\u002Flocalhost:3000](http:\u002F\u002Flocalhost:3000)\n\n---\n\n## 🧱 Requirements\n\n* Node.js 18+\n* npm \u002F yarn \u002F pnpm \u002F bun\n\n---\n\n## 🚀 Features\n\n### Editor Experience\n\n* Monaco Editor (VS Code core)\n* Syntax highlighting for Markdown\n* Image paste support\n\n### Live Workflow\n\n* Real-time preview\n* Scroll sync\n* Instant feedback loop\n\n### Focus Mode\n\n* Zen Mode (`Cmd\u002FCtrl + Shift + Z`)\n* Fullscreen, distraction-free writing\n\n### File Handling\n\n* Drag & drop `.md`, `.txt`, `.markdown`\n* Auto-save (local persistence)\n\n### Export\n\n* Markdown\n* HTML\n* PDF\n\n### Cloud Integrations\n\n* GitHub\n* Google Drive\n* Dropbox\n* OneDrive\n* Bitbucket\n\n---\n\n## 🔐 Environment Setup\n\nCreate:\n\n```bash\n.env.local\n```\n\n### Template\n\n```bash\n# Google Drive\nGOOGLE_CLIENT_ID=\nGOOGLE_CLIENT_SECRET=\nGOOGLE_REDIRECT_URI=http:\u002F\u002Flocalhost:3000\u002Fapi\u002Fgoogle-drive\u002Fcallback\n\n# OneDrive\nONEDRIVE_CLIENT_ID=\nONEDRIVE_CLIENT_SECRET=\nONEDRIVE_REDIRECT_URI=http:\u002F\u002Flocalhost:3000\u002Fapi\u002Fonedrive\u002Fcallback\n\n# Bitbucket\nBITBUCKET_CLIENT_ID=\nBITBUCKET_CLIENT_SECRET=\nBITBUCKET_REDIRECT_URI=http:\u002F\u002Flocalhost:3000\u002Fapi\u002Fbitbucket\u002Fcallback\n\n# GitHub\nGITHUB_CLIENT_ID=\nGITHUB_CLIENT_SECRET=\nGITHUB_REDIRECT_URI=http:\u002F\u002Flocalhost:3000\u002Fapi\u002Fgithub\u002Fcallback\n\n# Dropbox\nDROPBOX_CLIENT_ID=\nDROPBOX_CLIENT_SECRET=\nDROPBOX_REDIRECT_URI=http:\u002F\u002Flocalhost:3000\u002Fapi\u002Fdropbox\u002Fcallback\n```\n\n---\n\n## ☁️ Cloud Integrations\n\nEach provider requires OAuth configuration.\n\n### Google Drive\n\n* Enable Drive API\n* Create OAuth credentials\n* Redirect:\n\n```\n\u002Fapi\u002Fgoogle-drive\u002Fcallback\n```\n\n### OneDrive\n\n* Azure App Registration\n* Permissions:\n\n  * Files.ReadWrite\n  * User.Read\n\n### Bitbucket\n\n* OAuth consumer\n* Repo read\u002Fwrite access\n\n### GitHub\n\n* OAuth App\n* Callback:\n\n```\n\u002Fapi\u002Fgithub\u002Fcallback\n```\n\n### Dropbox\n\n* Scoped app\n* Enable:\n\n  * files.metadata.read\n  * files.content.write\n\n---\n\n## 🚢 Deployment\n\nUpdate all OAuth callbacks:\n\n```bash\nhttps:\u002F\u002Fyourdomain.com\u002Fapi\u002F{provider}\u002Fcallback\n```\n\nThen:\n\n```bash\nnpm run build\nnpm start\n```\n\n---\n\n## 🏗 Tech Stack\n\n| Layer     | Technology   |\n| --------- | ------------ |\n| Framework | Next.js 14   |\n| Editor    | Monaco       |\n| Styling   | Tailwind CSS |\n| State     | Zustand      |\n| Icons     | Lucide       |\n\n---\n\n## 📦 Scripts\n\n```bash\nnpm run dev              # Start dev server\nnpm run build            # Production build\nnpm start                # Start production server\nnpm run lint             # ESLint\nnpm run test             # Unit + E2E tests\nnpm run test:unit        # Vitest unit\u002Fintegration tests\nnpm run test:watch       # Vitest watch mode\nnpm run test:e2e         # Playwright E2E tests\nnpm run test:e2e:headed  # E2E in visible browser\nnpm run verify           # Lint + typecheck + all tests\n```\n\n---\n\n## 🧪 Testing\n\n294 unit\u002Fintegration tests (Vitest) + 39 E2E tests (Playwright) with 98% code coverage.\n\n```bash\nnpm run test:unit                # Run all unit tests\nnpx vitest run --coverage        # With coverage report\nnpm run test:e2e:headed          # E2E in visible browser\n```\n\nTests live in `tests\u002F` organized by type: `lib\u002F`, `store\u002F`, `hooks\u002F`, `components\u002F`, `routes\u002F`, and `e2e\u002F`.\n\n---\n\n## 🧭 Philosophy\n\nDillinger is built around a simple idea:\n\n> Writing tools should disappear.\n\nNo friction.\nNo clutter.\nJust flow.\n\n---\n\n## 🤝 Contributing\n\nPRs welcome. Open an issue first for major changes.\n\n---\n\n## 📄 License\n\nMIT\n","Dillinger 是一个现代化的云端原生 Markdown 编辑器，专为速度、专注和无缝同步设计。它基于 Next.js 构建，集成了 VS Code 级别的编辑体验、实时预览、滚动同步和即时反馈等功能。此外，Dillinger 支持多种云存储服务（如 GitHub、Google Drive、Dropbox 等），并提供 Zen 模式帮助用户进行无干扰写作。适用于需要高效编写和管理 Markdown 文档的开发者、作家或博主等人群，在任何需要快速编辑和分享 Markdown 内容的场景下都能发挥出色表现。",2,"2026-06-11 03:27:03","top_topic"]