Subscribe Free

Join 2670+ others. No spamming.
I promise!

We are currently under high development. Follow us at github.

Looking for Python Tutorials?
Check these awesome tutorials



Awesome D Awesome

A curated list of awesome D frameworks, libraries and software. Inspired by awesome-python.

I created this list so that when I needed something in the future, it would be easy to find. Most of the documents and links are collected from the D forum, the D wiki, and the D package repository. Exploring GitHub also helps as many of the libs are hosted there.

If you know an interesting lib/app in D, please tell me by issue or a pull request :-).

Official Website

Official Website URLs.


The people that made D the language it is.

  • Walter Bright - Father of D. Walter Bright is the creator and first implementer of the D programming language and has implemented compilers for several other languages.
  • Andrei Alexandrescu, PhD - C++ guru. Author of The D Programming Language and Modern C++ Design. With Walter Bright, Andrei co-designed many important features of D and authored a large part of D's standard library. Andrei works as a research scientist in Facebook and is now actively evangelizing D in the organization.
  • YOU - Please add your information if you've done something interesting in D. It is you, the awesome people that made D awesome. Also, I plan to make a request on the forum to interview all D contributors and complete this List.


  • DConf - the premier event where D luminaries exchange knowledge, insight, and inspiration on everything related to the D language and its ecosystem.


Organizations that contribute to D projects.

  • D Programming Language - Official Organization, hosts DMD, Phobos and other official tools and libs.
  • Facebook - Facebook hosts a lot of libraries in many languages. Their contribution to D is the warp--a preprocessor for C/C++ written in D, and flint--an open-source lint program for C++.

  • DerelictOrg - A GitHub organization hosting all Derelict bindings including:

    • OpenGL 3 (DerelictGL3),
    • Bgfx (DerelictBgfx),
    • ENet (DerelictENet),
    • SDL 2 (DerelictSDL2),
    • GLFW 3 (DerelictGLFW3),
    • OpenGLES (DerelictGLES),
    • Free Image (DerelictFI),
    • Assimp3 (DerelictASSIMP3),
    • libtheora (DerelictTheora),
    • libogg (DerelictOgg),
    • libvorbis (DerelictVorbis),
    • SFML 2 (DerelictSFML2),
    • libpq (DerelictPQ),
    • PhysicsFS (DerelictPHYSFS),
    • Open Dynamics Engine (DerelictODE),
    • Lua (DerelictLua),
    • DevIL (DerelictIL),
    • OpenAL (DerelictAL),
    • ALURE (DerelictALURE).
  • Circular Studios - We are a group of game developers at Rochester Institute of Technology building games and game tech. Hosts Dash, a 3D game engine written in D, and other related libs.
  • d-gamedev-team - An organization of gamedev related repos, including a D gamedev toolkit called gfm and an opengl tutorial in D.
  • EMSI - A Career building company that uses D as their main language. Hosts their opensource projects.
  • infognition - Infognition is a self-funded and self-sustained company specializing in video processing and compression technologies for end-users and developers. They provide several opensource video related applications & tools written in D, hosted on bitbucket. They are also porting their main product--Video Enchanser from C/C++ to D.


D related books. You can find another list of books on the Books D wiki page.

  • TDPL - The D Programming Language by Andrei Alexandrescu.
  • Programming in D - A very detailed book about programming in D by Ali Çehreli covering many areas of the language. Has a free online version and is suitable for beginners.
  • D Cookbook - A recipe-packed reference guide filled with practical tasks that are concisely explained to develop and broaden the user's abilities with the D programming language. by Adam D. Ruppe. Here is an interesting review of the book.


D related tutorials.

  • Pragmatic D tutorial - This is a pragmatic introduction to the D Programming Language. by Andreas Zwinkau.
  • D Template Tutorial - A tutorial dedicated to D Templates. Very good explanation about templates. Has pdf version. by Philippe Sigaud.
  • Component programming in D - An article written by Walter Bright that details how D's functional support leads to a flexible and beautiful component programming style.
  • Component programming with ranges - A detailed blog post about how to do component programming in a idiomatic D way with ranges, with a full working example.
  • Functional image processing in D - A very interesting tutorial about writing an image processing lib in D. Shows the power of D's templates/CTFE/Ranges/UFCS for functional style programming.
  • OpenGL tutorials - OpenGL tutorials in D.

Bare metal / kernel development


D related blogs.

  • Planet D - A repository of co-authored D-specific blogs maintained by Vladimir Panteleev.
  • D Idioms - A great blog for many useful idioms with D programming.


D related Aritcles.

Package Management

Libraries for package and dependency management.

  • - Official D library repository. Backed by dub.
  • dub - Official package and build management system for D.


Compile software from source code.

  • dmd - The reference compiler for the D programming language. Stable, builds insanely fast, very good for learning and rapid prototyping/development. Currently the frontend is implemented in D, and shared between dmd, ldc and gdc, the backend is implemented in C++.
  • ldc - The LLVM-based D compiler. Uses the DMD frontend and LLVM backend. Builds slower than dmd, but generates more optimized code than DMD. It supports all the target platforms of LLVM.
  • gdc - GNU D Compiler. Use DMD frontend and GCC backend. Currently targets the most platforms due to the use of GCC. Generated code runs faster than DMD in most cases, on par with LDC. In the process of integration with the official GCC toolchain.
  • sdc - The Stupid D Compiler. Written in D. Grows Smarter every day.
  • dil - A compiler for the D programming language. Written in D.

Build Tools

Manage projects and compile software from source code.

  • dub - De facto official package and build management system for D. Will be included officially soon.
  • scons-d - Scons has built-in support for building D projects, thanks to Russel Winder.


Integrated Development Environment.

  • Mono-D - A D language addon for Xamarin Studio/MonoDevelop. With dub support.
  • Visual D - Visual Studio extension for the D programming language.
  • DDT - Eclipse plugin for the D programming language.
  • DCD - Independent auto-complete program for the D programming language. Could be used with editors like vim, emacs, sublime text, textadept, and zeus. See editors support.
  • Coedit - Multiplatform IDE for the D programming language.
  • Dlang IDE - D language IDE based on DlangUI. This is a pure D implementation.

Lexers, Parsers, Parser Generators

  • libdparse - A D language lexer and parser, (possibly) future standard D parser/lexer.
  • Martin Nowak's Lexer - A lexer generator.
  • Mono-D's DParser - A D parser written in C# and used in Mono-D.
  • Pegged - A Parsing Expression Grammar (PEG) module written in D.
  • Goldie - Goldie Parsing System.
  • ctpg - Compile-Time Parser (with converter) Generator written in D.
  • dunnart - LALR(1) Parser Generator written in D.


  • warp - A fast preprocessor for C and C++ used in Facebook infrastructure. Written by Walter Bright.


  • higgs - Higgs JavaScript Virtual Machine, implemented in D.

Web Frameworks

Networking library

  • libasync - Cross-platform event loop library of asynchronous objects
  • libhttp2 - HTTP/2 library in D, translated from nghttp2

Full stack web frameworks.

  • vibe.d - Asynchronous I/O Web Framework that doesn’t get in your way, written in D.
  • arsd - Adam D. Ruppe's web framework.
  • cmsed - A component library for Vibe that functions as a CMS.

Data serialization

Json, XML, protobuf and other data serialization libs.

  • - JSON functions in Vibe.d. Currently the best implementation I used.
  • fast.json - A library for D that aims to provide the fastest possible implementation of some every day routines.
  • std.json - D's standard library JSON module. Needs refinement.
  • dproto - Google Protocol Buffer support in D.
  • painlessjson - Convert between D types and std.json.

Database clients

Clients and bindings to C bliencts for relational and nosql databases.

  • vibe.d - Vibe.d has internal support for Redis and MongoDB, which are very stable. Soon, the database drivers will be separated into independent projects.
  • mysql-native - A MySQL client implemented in native D.
  • ddb - Database access for D2. Currently only supports PostgreSQL.
  • arsd - Adam D. Ruppe's library; in addition to a Web backend, it also has support for database access with database.d, sqlite.d, mysql.d and postgres.d.
  • ddbc - DDBC is a DB Connector for D language (similar to JDBC). HibernateD (see below) uses ddbc for database abstraction.
  • hibernated - HibernateD is an ORM for D (similar to Hibernate).
  • dvorm - An ORM for D with Vibe support. Works with vibe.d and mysql-d, giving it the ability to access MongoDB and MySQL.

Command Line

  • scriptlike - Utility library to aid writing script-like programs in D.
  • todod - Todod is a command line based todo list manager. It also has support for shell interaction based on linenoise.
  • d-colorize - A port of the ruby library colorize. It add some methods to set color, background color and text effect on console easier using ANSI escape sequences.
  • terminal.d - Part of Adam Ruppe's arsd library supporting cursor and color manipulation on the console.

GUI Libs

Libraries for working with graphical user interface applications.

  • GtkD - GtkD is a D binding and OO wrapper of GTK+. GtkD is actively maintained and is currently the most stable GUI lib for D.
  • DWT - A library for creating cross-platform GUI applications. GWT is a port of the Java SWT library to D.
  • tkD - GUI toolkit for the D programming language based on Tcl/Tk.
  • DLangUI - Cross Platform GUI for D programming language.
  • cobox-wm - CteamBox Window Manager in D programming Language

Note: You can also find a list of GUI libs on, but not all of the libraries are actively maintained now.

Game Bindings

Bindings to game development related C libraries.

  • DerelictOrg - A GitHub organization hosting all Derelict bindings including:
    • OpenGL 3 (DerelictGL3),
    • Bgfx (DerelictBgfx),
    • ENet (DerelictENet),
    • SDL 2 (DerelictSDL2),
    • GLFW 3 (DerelictGLFW3),
    • OpenGLES (DerelictGLES),
    • Free Image (DerelictFI),
    • Assimp3 (DerelictASSIMP3),
    • libtheora (DerelictTheora),
    • libogg (DerelictOgg),
    • libvorbis (DerelictVorbis),
    • SFML 2 (DerelictSFML2),
    • libpq (DerelictPQ),
    • PhysicsFS (DerelictPHYSFS),
    • Open Dynamics Engine (DerelictODE),
    • Lua (DerelictLua),
    • DevIL (DerelictIL),
    • OpenAL (DerelictAL),
    • ALURE (DerelictALURE).

Game Frameworks


  • Spacecraft - A 3d multiplayer deathmatch space game written in D 2.0.

Video applications

Image Processing


Scientific programming

*scid - Scientific library for the D programming language


Print with care.

  • logger - Phobos logger proposal.
  • dlogg - Logging for concurrent applications and daemons with lazy and delayed logging, logrotate support.


Parsing configuration files

  • sdlang - An SDL (Simple Declarative Language) library for D.
  • D:YAML - YAML parser and emitter for the D programming language.

Blog Engine

Hosting blogs yourself

  • mood - simple vibe.d based blog engine

Other Awesome Lists

Other amazingly awesome lists can be found in the awesome-awesome and awesome-awesomeness projects.