QuarticCat / detypify

Typst symbol classifier

Home Page:https://detypify.quarticcat.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

logo

Detypify

Can't remember some Typst symbol? Draw it!

Features

  • PWA: installable and works offline
  • Tiny model: 1.3 MiB (ONNX), fast to load and run
  • Decent symbol set: support 400+ symbols

News

  • 2024-04-06: This project has been integrated into Tinymist.

Associated Repos

  • detypify-data: Detypify's own dataset (your contributions on the website finally go here)
  • detypify-external: Necessary external data to bootstrap Detypify

Use As A Library

Use the detypify-service NPM package.

Self Deployment

Download files from gh-pages branch and host them using any HTTP server.

Development

If you want to build migrate or train, you need to pull submodules. (Git LFS is required)

$ git submodule update --init --recursive

If you just want to build web, you can download train-out from NPM to project root.

Migrating

$ rye sync              # install venv and denpendencies
$ rye run migrate       # migrate
$ rye run migrate-font  # strip font (optional)

Training

$ rye sync       # install venv and denpendencies
$ rye run train  # train

Web Page

$ bun run --cwd=service copy  # copy train-out folder
$ bun install                 # install dependencies
$ bun run dev                 # start dev server
$ bun run build               # build for production

Logo & Favicons (Optional)

  1. Install NewComputerModernMath font (guide).

  2. Convert manuscript.svg.

    $ cd assets
    $ inkscape manuscript.svg --export-text-to-path --export-filename=logo.svg
    $ bunx svgo --multipass logo.svg
  3. Generate favicons by Favicon InBrowser.App using logo.svg.

  4. Move them to web/public/icons.

License

MIT

About

Typst symbol classifier

https://detypify.quarticcat.com/

License:MIT License


Languages

Language:Svelte 43.2%Language:Python 30.2%Language:JavaScript 23.5%Language:HTML 2.0%Language:CSS 1.1%