arsd-official 7.0.0

Subpackage collection for web, database, terminal ui, gui, scripting, and more with a commitment to long-term compatibility and stability.

To use this package, run the following command in your project's root directory:

Manual usage
Put the following dependency into your project's dependences section:

This package provides sub packages which can be used individually:

arsd-official:simpledisplay - Window creation and basic drawing

arsd-official:minigui - Small GUI widget library for Windows and Linux

arsd-official:nanovega - Vector graphics library

arsd-official:email - Email helper library, both sending MIME messages and parsing incoming mbox/maildir messages

arsd-official:image_files - Various image file format support - PNG read/write, JPEG, TGA, BMP, PCX, TGA, DDS read.

arsd-official:svg - Dependency-free partial SVG file format read support

arsd-official:jpeg - Dependency-free partial JPEG file format read support

arsd-official:png - PNG file format support

arsd-official:bmp - BMP file format support

arsd-official:htmltotext - HTML to plain text conversion

arsd-official:dom - HTML tag soup DOM library

arsd-official:rss - RSS/Atom parsing

arsd-official:characterencodings - Character encodings to UTF-8

arsd-official:cgi - web server library with cgi, fastcgi, scgi, and embedded http server support

arsd-official:mysql - MySQL client library. Wraps the official C library with my database.d interface.

arsd-official:postgres - Postgresql client library. Wraps the libpq C library with my database.d interface.

arsd-official:sqlite - sqlite wrapper. Wraps the official C library with my database.d interface.

arsd-official:mssql - Microsoft SQL Server client library. Wraps the official ODBC library with my database.d interface.

arsd-official:http - HTTP client library. Depends on OpenSSL right now on all platforms. On 32 bit Windows, you may need to get OMF openssl lib and dlls (ask me if you can't find it)

arsd-official:jsvar - Javascript-like object in D, capable of json read/write/manipulation.

arsd-official:jni - Provides easy interop with Java via JNI.

arsd-official:script - Small Javascript-like script interpreter with easy D API

arsd-official:terminal - Cross-platform Terminal I/O with color, mouse support, real time input, etc.

arsd-official:terminalemulator - A terminal emulation core as an in-memory library. Also includes mixin templates to assist with creating UIs, etc.

arsd-official:ttf - port of stb_ttf to D

arsd-official:color_base - Base color, point, image interface definitions

arsd-official:database_base - Basic database interface definitions. Use one (or more) of the drivers like arsd-official:mysql or arsd-official:postgres instead

arsd-official:libssh2_bindings - My bindings to libssh2

arsd-official:eventloop - My DEPRECATED event loop. Do NOT use in new programs, only offered here because I use it in a lot of old programs.

arsd-official:archive - Archive file support - tar, tar.xz decoders, and custom format "arcz" encoding and decoding. Self-contained.


This is a collection of modules that I've released over the years (the oldest module in here was originally written in 2006, pre-D1!) for a wide variety of purposes. Most of them stand alone, or have just one or two dependencies in here, so you don't have to download this whole repo. Feel free to email me, [email protected] or ping me as adam_d_ruppe on the #d IRC channel if you want to ask me anything.

I'm always adding to it, but my policy on dependencies means you can ignore what you don't need. I am also committed to long-term support. Even the obsolete modules I haven't used for years I usually keep compiling at least, and the ones I do use I am very hesitant to break backward compatibility on. My semver increases are very conservative.

See the full list of (at least slightly) documented module here: and refer to for the list of dub-enabled subpackages.

I have a patreon and my (almost) weekly blog you can check out if you'd like to financially support this work or see the updates and tips I write about.


Thanks go to Nick Sabalausky, Trass3r, Stanislav Blinov, ketmar, maartenvd, and many others over the years for input and patches.

Several of the modules are also ports of other C code, see the comments in those files for their original authors.


Many http-based functions in the lib also support unix sockets as an alternative to tcp.

With cgi.d, use

--host unix:/path/here

or, on Linux:

--host abstract:/path/here

after compiling with -version=embedded_httpd_thread to serve http on the given socket. (abstract: does a unix socket in the Linux-specific abstract namespace).

With http2.d, use


any time you are constructing a client. Note that navigateTo may lose the unix socket unless you specify it again.

  • Adam D. Ruppe
Sub packages:
arsd-official:simpledisplay, arsd-official:minigui, arsd-official:nanovega, arsd-official:email, arsd-official:image_files, arsd-official:svg, arsd-official:jpeg, arsd-official:png, arsd-official:bmp, arsd-official:htmltotext, arsd-official:dom, arsd-official:rss, arsd-official:characterencodings, arsd-official:cgi, arsd-official:mysql, arsd-official:postgres, arsd-official:sqlite, arsd-official:mssql, arsd-official:http, arsd-official:jsvar, arsd-official:jni, arsd-official:script, arsd-official:terminal, arsd-official:terminalemulator, arsd-official:ttf, arsd-official:color_base, arsd-official:database_base, arsd-official:libssh2_bindings, arsd-official:eventloop, arsd-official:archive
arsd-official:nanovega, arsd-official:mysql, arsd-official:mssql, arsd-official:minigui, arsd-official:dom, arsd-official:ttf, arsd-official:database_base, arsd-official:color_base, arsd-official:terminal, arsd-official:jsvar, arsd-official:postgres, arsd-official:cgi, arsd-official:http, arsd-official:htmltotext, arsd-official:characterencodings, arsd-official:script, arsd-official:sqlite, arsd-official:email, arsd-official:image_files, arsd-official:simpledisplay, arsd-official:png
11.4.2 2024-Feb-13
11.4.1 2024-Feb-12
11.4.0 2024-Jan-31
11.3.0 2023-Dec-12
11.2.3 2023-Nov-01
Show all 165 versions
Download Stats:
  • 7 downloads today

  • 48 downloads this week

  • 300 downloads this month

  • 351178 downloads total

Short URL: