Difference between revisions of "Diagrams/Projects"
(add link to gtk-toy) |
(→Potential projects: note idea about extra intensional info for envelopes) |
||
(11 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | ==Potential projects== |
||
+ | |||
+ | Looking for something to work on? Try one of these! |
||
+ | |||
+ | * Figure out an infrastructure for including animations in the gallery and/or user manual |
||
+ | * Improvements to paths: lengthening/shortening, arrowheads, etc. |
||
+ | * Controlled creation of splines using an API like the one in MetaPost. |
||
+ | * Build some [[example animations]]. |
||
+ | * Add extra intensional information to help do a better job with combining envelopes? e.g. inner and outer bounding boxes, circles, etc. e.g. if the outer bound of one lies completely inside the inner bound of another, the resulting combined envelope can be optimized to not actually do a max operation. |
||
+ | |||
==Backends== |
==Backends== |
||
Line 5: | Line 15: | ||
Officially supported backend using [http://www.cairographics.org/ cairo]. |
Officially supported backend using [http://www.cairographics.org/ cairo]. |
||
− | * [http:// |
+ | * [http://github.com/diagrams/diagrams-cairo github repo] |
* Status: active development |
* Status: active development |
||
* Participants: Brent Yorgey, Ryan Yates |
* Participants: Brent Yorgey, Ryan Yates |
||
Line 13: | Line 23: | ||
A Haskell-native backend generating SVG. The intention is for this to eventually replace cairo as the "out-of-the-box" diagrams backend. |
A Haskell-native backend generating SVG. The intention is for this to eventually replace cairo as the "out-of-the-box" diagrams backend. |
||
− | * [http:// |
+ | * [http://hackage.haskell.org/package/diagrams%2Dsvg hackage] |
+ | * [https://github.com/diagrams/diagrams-svg github repo] |
||
* Status: active development |
* Status: active development |
||
− | * Participants: Felipe Lessa, Brent Yorgey |
+ | * Participants: Deepak Jois, Ryan Yates, Felipe Lessa, Brent Yorgey |
=== Native Postscript === |
=== Native Postscript === |
||
Line 21: | Line 32: | ||
Very similar to the Cairo backend but only outputting EPS. |
Very similar to the Cairo backend but only outputting EPS. |
||
− | * [ |
+ | * [https://github.com/fryguybob/diagrams-postscript github repo] |
* Status: active development |
* Status: active development |
||
* Participants: Ryan Yates |
* Participants: Ryan Yates |
||
Line 27: | Line 38: | ||
=== HTML5 canvas === |
=== HTML5 canvas === |
||
− | * [ |
+ | * [https://github.com/ku-fpg/diagrams-canvas github repo] |
+ | * [https://github.com/byorgey/diagrams-canvas variant ported to work with blank-canvas] |
||
* Status: active development |
* Status: active development |
||
− | * Participants: |
+ | * Participants: Andy Gill, Brent Yorgey |
=== LaTeX/TikZ === |
=== LaTeX/TikZ === |
||
− | * [http://patch-tag.com/r/snwalck/diagrams-tikz darcs repo] |
+ | * original [http://patch-tag.com/r/snwalck/diagrams-tikz darcs repo] by Scott Walck |
+ | * [https://github.com/mahrz/diagrams-tikz updated version] by Malte Harder on github |
||
− | * Status: ? |
||
+ | * Status: active development |
||
− | * Participants: Scott Walck |
+ | * Participants: Scott Walck, Malte Harder |
=== POV-Ray === |
=== POV-Ray === |
||
Line 41: | Line 54: | ||
A [http://www.povray.org/ POV-Ray backend] for 3D diagrams. |
A [http://www.povray.org/ POV-Ray backend] for 3D diagrams. |
||
− | * [http:// |
+ | * [http://github.com/diagrams/diagrams-povray github repo] |
* Status: proof of concept only, needs someone to take it over! |
* Status: proof of concept only, needs someone to take it over! |
||
Line 47: | Line 60: | ||
* OpenGL |
* OpenGL |
||
+ | |||
+ | == Related packages and tools == |
||
+ | |||
+ | === command-line/interactive === |
||
+ | |||
+ | * [https://github.com/mgsloan/diagrams-ghci diagrams-ghci] |
||
+ | |||
+ | See also an earlier project in a similar direction: |
||
+ | |||
+ | * [http://patch-tag.com/r/fryguybob/diagrams-hint diagrams-hint] |
||
+ | |||
+ | === Build service === |
||
+ | |||
+ | [http://github.com/diagrams/diagrams-builder/ diagrams-builder] is a library providing the ability to dynamically interpret diagrams code snippets, including utilities for creating temporary files etc. as needed. Useful for making preprocessing tools for embedding diagrams code in other document formats (e.g. LaTeX). |
||
+ | |||
+ | === Fonts === |
||
+ | |||
+ | The [http://hackage.haskell.org/package/SVGFonts SVGFonts] package implements Haskell-native font support (for fonts in the SVG-font format) that can be plugged into diagrams. |
||
== Other projects == |
== Other projects == |
||
Line 53: | Line 84: | ||
Michael Sloan's [https://github.com/mgsloan/gtk-toy gtk-toy project] is a framework for creating interactive gtk/cairo applications. [https://github.com/mgsloan/gtk-toy-diagrams gtk-toy-diagrams] provides tools for using diagrams in conjunction with gtk-toy. |
Michael Sloan's [https://github.com/mgsloan/gtk-toy gtk-toy project] is a framework for creating interactive gtk/cairo applications. [https://github.com/mgsloan/gtk-toy-diagrams gtk-toy-diagrams] provides tools for using diagrams in conjunction with gtk-toy. |
||
+ | |||
+ | === LaTeXgrapher === |
||
+ | |||
+ | [http://patch-tag.com/r/fryguybob/LaTeXGrapher LaTeXGrapher] is a project by Ryan Yates providing a domain-specific language for producing mathematical graphs, backed by the diagrams-postscript backend. |
||
+ | |||
+ | === hs-logo === |
||
+ | |||
+ | Deepak Jois is working on a [https://github.com/deepakjois/hs-logo logo interpreter] written in Haskell, using diagrams as a backend. |
||
== Packages using diagrams == |
== Packages using diagrams == |
Revision as of 21:34, 6 November 2012
Potential projects
Looking for something to work on? Try one of these!
- Figure out an infrastructure for including animations in the gallery and/or user manual
- Improvements to paths: lengthening/shortening, arrowheads, etc.
- Controlled creation of splines using an API like the one in MetaPost.
- Build some example animations.
- Add extra intensional information to help do a better job with combining envelopes? e.g. inner and outer bounding boxes, circles, etc. e.g. if the outer bound of one lies completely inside the inner bound of another, the resulting combined envelope can be optimized to not actually do a max operation.
Backends
Cairo
Officially supported backend using cairo.
- github repo
- Status: active development
- Participants: Brent Yorgey, Ryan Yates
Native SVG
A Haskell-native backend generating SVG. The intention is for this to eventually replace cairo as the "out-of-the-box" diagrams backend.
- hackage
- github repo
- Status: active development
- Participants: Deepak Jois, Ryan Yates, Felipe Lessa, Brent Yorgey
Native Postscript
Very similar to the Cairo backend but only outputting EPS.
- github repo
- Status: active development
- Participants: Ryan Yates
HTML5 canvas
- github repo
- variant ported to work with blank-canvas
- Status: active development
- Participants: Andy Gill, Brent Yorgey
LaTeX/TikZ
- original darcs repo by Scott Walck
- updated version by Malte Harder on github
- Status: active development
- Participants: Scott Walck, Malte Harder
POV-Ray
A POV-Ray backend for 3D diagrams.
- github repo
- Status: proof of concept only, needs someone to take it over!
Wanted backends
- OpenGL
Related packages and tools
command-line/interactive
See also an earlier project in a similar direction:
Build service
diagrams-builder is a library providing the ability to dynamically interpret diagrams code snippets, including utilities for creating temporary files etc. as needed. Useful for making preprocessing tools for embedding diagrams code in other document formats (e.g. LaTeX).
Fonts
The SVGFonts package implements Haskell-native font support (for fonts in the SVG-font format) that can be plugged into diagrams.
Other projects
gtk-toy
Michael Sloan's gtk-toy project is a framework for creating interactive gtk/cairo applications. gtk-toy-diagrams provides tools for using diagrams in conjunction with gtk-toy.
LaTeXgrapher
LaTeXGrapher is a project by Ryan Yates providing a domain-specific language for producing mathematical graphs, backed by the diagrams-postscript backend.
hs-logo
Deepak Jois is working on a logo interpreter written in Haskell, using diagrams as a backend.