AgentEd
Your visual Markdown editor, with frontmatter and token estimates. Write notes, project briefs, AI instructions and knowledge files, and keep them in your own folders. Free and open source.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Free, privacy-friendly text utilities built with Next.js (App Router), TypeScript, and Tailwind CSS. All processing runs locally in the browser — no text is ever sent to a server.
| Tool | URL |
|---|---|
| Word Counter | /tools/word-counter |
| Character Counter | /tools/character-counter |
| Sentence & Paragraph Counter | /tools/sentence-counter |
| Reading Time Calculator | /tools/reading-time-calculator |
| Case Converter | /tools/case-converter |
| Title Case Converter | /tools/title-case-converter |
| Remove Duplicate Lines | /tools/remove-duplicate-lines |
| Remove Extra Spaces | /tools/remove-extra-spaces |
| Text to Slug | /tools/text-to-slug |
| Lorem Ipsum Generator | /tools/lorem-ipsum-generator |
npm install
cp env.example .env.local # then edit values
npm run dev # http://localhost:3000
Note:
.npmrcpoints atregistry.npmmirror.combecauseregistry.npmjs.orgwas unreachable/extremely slow from this network. Delete that file to use the default registry.
| Command | Purpose |
|---|---|
npm run dev | Start the dev server |
npm run build | Production build |
npm start | Serve the production build |
npm run lint | ESLint |
npm run typecheck | tsc --noEmit |
npm test | Unit tests (Vitest) for all text functions |
npm run test:e2e | Playwright end-to-end tests (desktop/tablet/mobile) |
E2E tests need browsers once: npx playwright install chromium.
See env.example. In production (Vercel project settings → Environment
Variables):
| Variable | Required | Purpose |
|---|---|---|
NEXT_PUBLIC_SITE_URL | Yes | Canonical origin for metadata, sitemap, robots |
NEXT_PUBLIC_CONTACT_EMAIL | Yes | Shown on contact page / privacy policy |
NEXT_PUBLIC_ADSENSE_CLIENT | After approval | ca-pub-* publisher ID — gates ALL ad code |
NEXT_PUBLIC_ADSENSE_SLOT_* | After approval | Ad unit slot IDs per placement |
No ad code is emitted unless NEXT_PUBLIC_ADSENSE_CLIENT is a real
ca-pub- ID, so the site ships "ads off" by default.
NEXT_PUBLIC_ADSENSE_CLIENT to your ca-pub-* ID and redeploy —
this activates the loader script and generates /ads.txt with the
matching publisher ID automatically.NEXT_PUBLIC_ADSENSE_SLOT_* env
vars; redeploy. (Or enable "Auto ads" in the AdSense dashboard and skip
slot IDs entirely.)NEXT_PUBLIC_SITE_URL and NEXT_PUBLIC_CONTACT_EMAIL.https://<domain>/sitemap.xml and /robots.txt, then
submit the domain in Google Search Console.src/
app/ # routes: /, /tools/[slug], legal pages, sitemap,
# robots, manifest, icon, opengraph-image
components/ # header, footer, cards, ad slot, shared tool page
components/tools/ # per-tool client components + shared UI
lib/text/ # pure text-processing functions (unit-tested)
lib/tools.ts # tool registry: slugs, copy, FAQs, related links
e2e/ # Playwright specs