Materializr
開源參數式 3D CAD 給創客 — 受限草圖、實體建模、螺紋、SVG 與文字雕刻、STL/STEP 匯出。Android、iPad、Linux、Mac、Windows。Vibe 編碼。
AI 翻譯
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Turn typed text into realistic handwritten pages and full assignments: auto-filled university front pages, AI-written answers (Claude, DeepSeek, OpenAI, Gemini or no API key), templates and one-click PDF. Runs in your browser. Your data stays on your device.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Turn typed text into realistic handwritten pages, or build a complete handwritten assignment, with a filled-in front page and AI-drafted answers. Everything runs in your browser, and your data stays on your device.
Maintained by CodewithWitcher. Contributions are welcome. See CONTRIBUTING.md.
| Option | How | Best for |
|---|---|---|
| Online | Open https://codewithwitcher.github.io/Text-To-Handwritten-With-AI/ | Trying it out, nothing to install |
| One command (Python) | pipx run text-to-handwriting-ai or uvx text-to-handwriting-ai (Python 3.8+) | Every AI provider, fully on your machine |
| One command (Node) | npx text-to-handwriting-ai (Node.js 18+) | Same, if you have Node instead of Python |
| From source | Clone the repo, then npm start or python3 server.py | Contributing |
Your data stays in your browser in every option. The online version calls AI providers straight from your browser. Claude and DeepSeek allow that, but some providers block it (CORS). If a provider fails online, use one of the one-command options: they run a small local relay that works with all of them.
Use the switch at the top of the page.
The original quick converter. Type or paste text, choose a font, ink and paper, then generate images or a PDF.
A guided, four-step flow that produces a complete assignment PDF.
Pick an assessment template: Q&A, short answers, detailed answers, essay, lab report, case study, or your own. Choose a font (QE Dave Mergens by default) or upload your own .ttf. Then set ink colours for answers and headings, heading style, ruled lines, margin, and natural variation (a small per-word tilt so it doesn't look like a font). The live preview updates as you change things.
Upload your university or college front page as an image or PDF.
__ / __ / ____ slots and addresses that need two lines.Choose where the questions come from:
Then generate the answers with AI. Answer length follows the marks and the template, and you can edit, regenerate or reorder anything. No API key? Click Copy prompt, paste it into ChatGPT, Claude.ai or DeepSeek, paste the reply back, and click Import answers.
Text flows across A4 pages: words are never cut, and headings are never left alone at the bottom of a page. Edit the final text if you like, then download one PDF (front page first) or the individual page images.
My Profile stores your name, roll number, programme and other details in this browser, plus My Courses for each subject you write assignments for. To fill it from a file, click Download profile template, fill in the JSON in any text editor, then click Import profile.
AI Settings supports Claude, DeepSeek, OpenAI, Google Gemini, OpenRouter, Groq, Ollama (local, no key) and any OpenAI-compatible endpoint. Keys stay in your browser.
Dark mode is included:
One command, no clone. Use whichever you have:
pipx run text-to-handwriting-ai # Python (pipx)
uvx text-to-handwriting-ai # Python (uv)
npx text-to-handwriting-ai # Node.js
Each one opens http://127.0.0.1:8080 in your browser. Options: --port 9000, --no-open, --host 0.0.0.0 (to reach it from other devices on your network).
To keep it installed instead: pip install text-to-handwriting-ai, then run text-to-handwriting-ai.
From a clone (no dependencies needed to run):
npm start # Node 18+
python3 server.py # or Python 3.8+, same behaviour
Both serve the app and relay AI requests to the provider you choose, so browsers don't block them (CORS). If the port is busy, the next free one is used.
macOS: port 5000 is taken by AirPlay Receiver, which is why the default is 8080.
Own content and the final text step use this formatting:
| Write | Result |
|---|---|
# Title | Centered title |
## Heading | Question / section heading |
### Sub-heading | Sub-heading |
- item / 1. item | Bullet / numbered list |
**text** | Underlined emphasis |
| blank line | New paragraph |
--- | New page |
index.html Page shell: Classic markup + Advanced markup
bin/cli.mjs `npx text-to-handwriting-ai` launcher (Node, no deps)
text_to_handwriting_ai/ Same server + AI relay in Python (stdlib only); the pip package
server.py Runs the Python server from a clone
pyproject.toml pip package definition (bundles the site files at build time)
docs/screenshots/ Images used in this README
js/app.mjs Classic mode (original behaviour)
js/mode-switch.mjs Classic / Advanced switch (lazy-loads Advanced)
js/config.mjs Repository / author links
js/advanced/
main.mjs Advanced mode controller (tabs, steps)
llm.mjs AI providers (Claude SDK + OpenAI-compatible)
questions.mjs Question extraction (AI and rule-based)
templates.mjs Templates, prompts, document composition
renderer.mjs Pagination + handwriting page rendering
frontpage.mjs Front page detection / editor
pdf-input.mjs PDF text extraction + OCR
profile.mjs, store.mjs, output.mjs, ui.mjs, loaders.mjs
css/advanced.css Advanced mode styles
npm test, with the server running)Bug reports, front-page layouts that don't detect well, new templates and fixes are all welcome. Read CONTRIBUTING.md to get set up, and follow our Code of Conduct. To report a security problem, see SECURITY.md.
Use this for notes, practice, accessibility (for example, if handwriting is hard for you) and mock-ups. Check your institution's rules before submitting AI-assisted or generated work.
MIT. See LICENSE. Based on the MIT-licensed text-to-handwriting project.