https://github.com/diagrams/diagrams
Embedded domain-specific language for declarative vector graphics (wrapper package)
https://github.com/diagrams/diagrams
Last synced: about 1 month ago
JSON representation
Embedded domain-specific language for declarative vector graphics (wrapper package)
- Host: GitHub
- URL: https://github.com/diagrams/diagrams
- Owner: diagrams
- License: other
- Created: 2012-07-26T20:18:20.000Z (almost 13 years ago)
- Default Branch: master
- Last Pushed: 2023-08-01T19:59:59.000Z (almost 2 years ago)
- Last Synced: 2024-03-26T08:52:00.419Z (about 1 year ago)
- Language: Haskell
- Homepage: https://diagrams.github.io/
- Size: 58.6 KB
- Stars: 193
- Watchers: 17
- Forks: 12
- Open Issues: 14
-
Metadata Files:
- Readme: README.markdown
- Changelog: CHANGES.md
- License: LICENSE
Awesome Lists containing this project
- awesome-starred - diagrams/diagrams - Embedded domain-specific language for declarative vector graphics (wrapper package) (others)
README
[](https://github.com/diagrams/diagrams/actions/workflows/haskell-ci.yml)
[diagrams] is a full-featured framework and domain-specific language
(embedded in [Haskell]) for creating declarative vector graphics and
animations.[diagrams]: http://projects.haskell.org/diagrams/
[haskell]: http://www.haskell.org/haskellwiki/HaskellThis package is just *a convenient wrapper* around the
[diagrams-core], [diagrams-lib], [diagrams-svg], and
[diagrams-contrib] packages, so they can be installed with a single
`cabal install --lib diagrams` command.[diagrams-core]: http://github.com/diagrams/diagrams-core
[diagrams-lib]: http://github.com/diagrams/diagrams-lib
[diagrams-svg]: http://github.com/diagrams/diagrams-svg
[diagrams-contrib]: http://github.com/diagrams/diagrams-contribThe package also comes with flags to enable six different backends.
The [native SVG backend](http://github.com/diagrams/diagrams-svg) is
enabled by the `-fsvg` flag and is enabled by default. If you don't
want it, you must explicitly disable it with `-f-svg`.The
[native postscript backend](http://github.com/diagrams/diagrams-postscript)
is disabled by default but can be enabled by the `-fps` flag.The [cairo backend](http://github.com/diagrams/diagrams-cairo) is
disabled by default but can be selected with the `-fcairo` flag. In
addition, the [GTK backend](http://github.com/diagrams/diagrams-gtk)
is based on the cairo backend (but split into a separate package to
make installing the cairo backend easier). It can be selected with
the `fgtk` flag.The [native rasterific backend](http://github.com/diagrams/diagrams-rasterific) which is
disabled by default but can be selected with the `-frasterific` flag.The [native canvas backend](http://github.com/diagrams/diagrams-canvas) which is
disabled by default but can be selected with the `-fcanvas` flag.# Installation
```
cabal update && cabal install --lib diagrams
```or, to get the postscript backend in addition to the SVG backend:
```
cabal update && cabal install --lib -fps diagrams
```or, to get the cairo backend in addition to the SVG backend:
```
cabal update && cabal install gtk2hs-buildtools && cabal install --lib -fcairo diagrams
```# Reporting bugs
Issue trackers for all diagrams-related repositories are hosted under
the [diagrams organization on github](http://github.com/diagrams). If
you know the specific package containing the bug, report it in the
issue tracker specific to that package (for example,
[diagrams-lib](http://github.com/diagrams/diagrams-lib/issues)).
Otherwise, just report the issue in the issue tracker for the
[general diagrams repository](http://github.com/diagrams/diagrams/issues).# Further reading
For more information, including a gallery of examples, tutorial, and
user manual, see the
[diagrams website](http://projects.haskell.org/diagrams). For help,
join the `#diagrams` IRC channel on Freenode or the
[mailing list](http://groups.google.com/group/diagrams-discuss).