https://github.com/varkor/quiver Skip to content Navigation Menu Toggle navigation Sign in * Product + GitHub Copilot Write better code with AI + Security Find and fix vulnerabilities + Actions Automate any workflow + Codespaces Instant dev environments + Issues Plan and track work + Code Review Manage code changes + Discussions Collaborate outside of code + Code Search Find more, search less Explore + All features + Documentation + GitHub Skills + Blog * Solutions By company size + Enterprises + Small and medium teams + Startups By use case + DevSecOps + DevOps + CI/CD + View all use cases By industry + Healthcare + Financial services + Manufacturing + Government + View all industries View all solutions * Resources Topics + AI + DevOps + Security + Software Development + View all Explore + Learning Pathways + White papers, Ebooks, Webinars + Customer Stories + Partners + Executive Insights * Open Source + GitHub Sponsors Fund open source developers + The ReadME Project GitHub community articles Repositories + Topics + Trending + Collections * Enterprise + Enterprise platform AI-powered developer platform Available add-ons + Advanced Security Enterprise-grade security features + GitHub Copilot Enterprise-grade AI features + Premium Support Enterprise-grade 24/7 support * Pricing Search or jump to... Search code, repositories, users, issues, pull requests... Search [ ] Clear Search syntax tips Provide feedback We read every piece of feedback, and take your input very seriously. [ ] [ ] Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly Name [ ] Query [ ] To see all available qualifiers, see our documentation. Cancel Create saved search Sign in Sign up Reseting focus You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert {{ message }} varkor / quiver Public * Notifications You must be signed in to change notification settings * Fork 85 * Star 3k A modern commutative diagram editor for the web. q.uiver.app License MIT license 3k stars 85 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings * Code * Issues 51 * Pull requests 0 * Discussions * Actions * Wiki * Security * Insights Additional navigation options * Code * Issues * Pull requests * Discussions * Actions * Wiki * Security * Insights varkor/quiver master BranchesTags [ ] Go to file Code Folders and files Name Name Last commit message Last commit date Latest commit History 437 Commits package package screenshots screenshots service-worker service-worker src src .gitignore .gitignore CITATION.cff CITATION.cff LICENSE LICENSE Makefile Makefile README.md README.md View all files Repository files navigation * README * MIT license quiver: a modern commutative diagram editor quiver quiver is a modern, graphical editor for commutative and pasting diagrams, capable of rendering high-quality diagrams for screen viewing, and exporting to LaTeX via tikz-cd. Creating and modifying diagrams with quiver is orders of magnitude faster than writing the equivalent LaTeX by hand and, with a little experience, competes with pen-and-paper. Try quiver out: q.uiver.app Features & screenshots quiver features an efficient, intuitive interface for creating complex commutative diagrams and pasting diagrams. It's easy to draw diagrams involving pullbacks and pushouts, Pullback adjunctions, Adjunction and higher cells. 3-cell Object placement is based on a flexible grid that resizes according to the size of the labels. Flexible grid Arrow styles There is a wide range of composable arrow styles. Colours And full use of colour for labels and arrows. Screenshot mode quiver is intended to look good for screenshots, as well as to export LaTeX that looks as close as possible to the original diagram. Keyboard hints Diagrams may be created and modified using either the mouse, by clicking and dragging, or using the keyboard, with a complete set of keyboard shortcuts for performing any action. Export to LaTeX When you export diagrams to LaTeX, quiver will embed a link to the diagram, which will allow you to return to it later if you decide it needs to be modified, or to share it with others. Other features * Multiple selection, making mass changes easy and fast. * A history system, allowing you to undo/redo actions. * Support for custom macro definitions: simply paste a URL corresponding to the file containing your \newcommands. * Export embeddable diagrams to HTML. * Panning and zooming, for large diagrams. * Smart label alignment and edge offset. Importing macros and colours To use custom macros and colours in quiver, create a file containing the definitions, like the following. \newcommand{\cat}{\mathscr} \newcommand{\psh}{\widehat} \newcommand{\smcat}{\mathbb} \newcommand{\yo}{yo} Upload the file to a publicly accessible URL (for instance, gist.github.com), and paste the URL for the raw text into the "Macros" input at the bottom of quiver. Currently, macros may be defined using \newcommand, \newcommand*, \ renewcommand, \renewcommand*, \DeclareMathOperator, and \ DeclareMathOperator*; and colours may be defined using \definecolor (using the colour modes: rgb, RGB, HTML, gray). Editor integration See Editor integration on the quiver wiki. Building Run make from the command line, and then open src/index.html in your favourite web browser. If this fails, you might be using an incompatible version of Make or Bash. In this case, you can manually download the latest release of KaTeX and place it under src/ as src/KaTeX/. If KaTeX has not been given the correct path, you will get an error telling you that KaTeX failed to load. quiver must be run through localhost. If you have Python installed, an easy solution is to run: python3 -m http.server in the quiver src directory and then open localhost:8000 in browser. If you have any other problems building quiver, open an issue detailing the problem and I'll try to help. Thanks to * S. C. Steenkamp, for helpful discussions regarding the aesthetic rendering of arrows. * AndreC, for the custom TikZ style for curves of a fixed height. * Nathan Corbyn, for adding the ability to export embeddable diagrams to HTML. * Paolo Brasolin, for adding offline support. * Carl Davidson, for discussing and prototyping loop rendering. * Everyone who has improved quiver by reporting issues or suggesting improvements. About A modern commutative diagram editor for the web. q.uiver.app Topics editor latex diagram category-theory tikz commutative-diagrams tikzcd tikz-cd pasting-diagrams commutative Resources Readme License MIT license Activity Stars 3k stars Watchers 28 watching Forks 85 forks Report repository Contributors 7 * * * * * * * Languages * JavaScript 90.3% * CSS 5.1% * TeX 2.3% * HTML 1.6% * Makefile 0.7% Footer (c) 2024 GitHub, Inc. Footer navigation * Terms * Privacy * Security * Status * Docs * Contact * Manage cookies * Do not share my personal information You can't perform that action at this time.