tart alternatives and similar packages
Based on the "Graphics" category.
Alternatively, view tart alternatives based on common mentions on social networks and blogs.
Gifcurry9.9 0.0 tart VS Gifcurry😎 The open-source, Haskell-built video editor for GIF makers.
implicit9.9 3.9 tart VS implicitA math-inspired CAD program in haskell. CSG, bevels, and shells; 2D & 3D geometry; 2D gcode generation...
reanimate9.9 3.9 tart VS reanimateHaskell library for building declarative animations based on SVG graphics
brick9.9 7.0 tart VS brickA declarative Unix terminal UI library written in Haskell
Chart9.8 0.0 tart VS ChartA 2D charting library for haskell
clay9.8 0.0 tart VS clayA CSS preprocessor as embedded Haskell.
sdl29.8 1.3 tart VS sdl2Haskell bindings to the SDL2 library
threepenny-gui9.8 1.3 tart VS threepenny-guiGUI framework that uses the web browser as a display.
gloss9.8 0.0 tart VS glossPainless 2D vector graphics, animations and simulations.
hylide9.8 0.0 tart VS hylideGLSL embedded in Haskell
fltkhs9.6 0.0 L4 tart VS fltkhsHaskell bindings to FLTK GUI toolkit.
diagrams-lib9.6 0.0 tart VS diagrams-libDiagrams standard library
friday9.6 0.0 tart VS fridayFast image IO and transformations.
X119.5 2.2 tart VS X11A Haskell binding to the X11 graphics library.
OpenGL9.5 0.0 tart VS OpenGLHaskell bindings to OpenGL
GPipe9.5 0.0 tart VS GPipeCore library of new GPipe, encapsulating OpenGl and providing a type safe minimal library
diagrams9.5 0.0 tart VS diagramsEmbedded domain-specific language for declarative vector graphics (wrapper package)
Win329.5 2.2 tart VS Win32Haskell support for the Win32 API
typed-spreadsheet9.5 0.0 tart VS typed-spreadsheetTyped and composable spreadsheets
diagrams-core9.4 0.0 tart VS diagrams-coreCore types and utilities
VulkanMemoryAllocator9.4 0.0 tart VS VulkanMemoryAllocatorHaskell bindings for Vulkan
Rasterific9.3 0.0 tart VS RasterificA drawing engine in Haskell
blank-canvas9.2 0.0 tart VS blank-canvasA Haskell API into HTML5 Canvas
xcffib9.2 6.0 L5 tart VS xcffibA drop-in replacement for xpyb based on cffi
luminance9.2 0.0 tart VS luminanceType-safe, type-level and stateless Haskell graphics framework
hip9.2 0.0 tart VS hipHaskell Image Processing Library
log-warper9.2 0.0 tart VS log-warperLogging library to provide more convenient, extremely configurable but simple monadic interface with pretty output
diagrams-svg9.1 0.0 tart VS diagrams-svgAn SVG backend for diagrams
free-game9.1 0.0 tart VS free-gameThe free game engine
GLFW-b9.1 0.0 tart VS GLFW-bHaskell bindings to GLFW
QuickPlot9.1 0.0 L2 tart VS QuickPlotQuick and easy data visualizations with Haskell
hslogger9.1 0.0 tart VS hsloggerLogging framework for Haskell
gl9.1 0.0 tart VS glComplete raw OpenGL bindings for Haskell
unm-hip9.0 0.0 tart VS unm-hipThe University of New Mexico's Haskell Image Processing Library
timeplot9.0 0.0 tart VS timeplotAnalyst's swiss army knife for visualizing data from ad-hoc log files
diagrams-contrib9.0 0.0 tart VS diagrams-contribUser-contributed extensions to diagrams
matplotlib8.9 0.0 tart VS matplotlibHaskell bindings for Python's Matplotlib
graphviz8.9 0.0 tart VS graphvizHaskell bindings to the Graphviz toolkit
GLUT8.8 0.0 tart VS GLUTHaskell bindings to GLUT
OpenGLRaw8.8 0.0 tart VS OpenGLRawHaskell bindings to OpenGL (direct C bindings)
processing-for-haskell8.8 4.0 tart VS processing-for-haskellGraphics for kids and artists. Processing implemented in Haskell
reflex-gloss8.7 0.0 tart VS reflex-glossAn reflex interface for gloss.
bindings-GLFW8.6 0.0 L2 tart VS bindings-GLFWLow-level Haskell bindings to GLFW
GLUtil8.6 0.0 tart VS GLUtilUtility functions for working with OpenGL BufferObjects, GLSL shaders, and textures.
diagrams-reflex8.5 0.0 tart VS diagrams-reflexreflex backend for diagrams drawing EDSL.
FractalArt8.5 0.0 tart VS FractalArtGenerate colorful wallpapers!
HPDF8.4 0.0 tart VS HPDFHaskell library for PDF generation (graphics and typesetting)
imagemagick8.3 0.0 tart VS imagemagickhaskell imagemagick bindings
diagrams-cairo8.3 0.0 tart VS diagrams-cairoCairo backend for diagrams
SVGFonts8.3 4.0 tart VS SVGFontsFonts from the SVG-Font format
Access the most powerful time series database as a service
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of tart or a related project?
tart - terminal art program
_____ _ ____ _____ _ (_ _)/ \ | (_ _)| | | | / ^ \ | O || | |_| | |/ ___ \| _ < | | _ |_|_/ \_|_| \_\|_| |_|
Tart is a program that provides an image-editor-like interface to creating ASCII art - in the terminal, with your mouse! This program is written using my purely-functional terminal user interface toolkit, Brick.
tart is a Haskell project. You'll need
GHC (preferably at least 8.2) and
(preferably at least 2.0). Then:
$ cabal update $ git clone https://github.com/jtdaugherty/tart.git $ cd tart $ cabal new-build $ $(find . -name tart -type f)
tart is built as both a library and a command-line tool.
But if you want to use tart only for its Haskell library and avoid the
additional executable dependencies, you can build with the
cabal build flag.
- Drawing tools: freehand, line, box, flood fill, text string
- Utility tools: repaint, restyle, eyedropper, eraser
- Multiple graphical styles for boxes
- Named image layers with reordering, visibility toggling
- Character selection for freehand and flood fill tools
- Set foreground color, background color, and text style independently
- Full mouse interaction and keyboard shortcuts
- Paste text from clipboard into canvas
- Undo and redo
- Text styles: bold, blink, underline, reverse video
- Load and save ASCII art files (binary)
- Save plain versions of ASCII art for embedding in documents
- Save color versions of ASCII art with terminal escape sequences for printing to terminals
- Import existing plaintext files as the basis for new ASCII art files
- Set arbitrary canvas size
Terminal Emulator Support
tart has been tested extensively with the following terminal emulators
and is known to work well with them:
- OS X:
- OS X:
Please let me know if you use
tart with another emulator and let me
know how well it works!
Tools / styles:
9: select tool
y: open the attribute style selector
$: select attribute style
b: open foreground / background palette selectors
c: set tool drawing character (where applicable)
>: decrease / increase tool size (where applicable)
Esc: cancel tool drag (e.g. box)
d: move canvas
C: re-center canvas
v: set canvas size
+: decrease / increase canvas size
C-a: add new layer
C-r: rename current layer
C-p: select next/previous layer
C-x: delete selected layer
C-d: move current layer up / down
C-v: toggle selected layer's visibility
C-l: toggle visibility of layer list
q: quit (and optionally save)
- OS paste: paste text into canvas
How It Works
Tart requires a terminal with mouse support. You use various tools (such as freehand drawing, boxes, etc.) to draw ASCII pictures. You can set a current foreground and background color. You can also resize the drawing canvas to get the desired output size. When you're finished, you can save to disk, at which point Tart creates three files:
- A binary file (say
foo.tart) suitable for reloading with Tart for further editing later
- A text file
foo.color.txtcontaining the ASCII art with terminal color escape sequences, suitable for emitting to terminals
- A text file
foo.plain.txtcontaining the ASCII art without terminal color escape sequences, suitable for embedding in documentation
If you decide to contribute, that's great! Here are some guidelines you should consider to make submitting patches easier for all concerned:
- If you want to take on big things, talk to me first; let's have a design/vision discussion before you start coding. Create a GitHub issue and we can use that as the place to hash things out.
- Please make changes consistent with the conventions I've used in the codebase.
- Please adjust or provide Haddock and/or user guide documentation relevant to any changes you make.