Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gecko0307/dlib
Allocators, I/O streams, math, geometry, image and audio processing for D
https://github.com/gecko0307/dlib
audio-processing computational-geometry containers dlang image-processing json-parser lexical-analysis linear-algebra memory-allocation networking threading utility-library xml-parser
Last synced: about 2 hours ago
JSON representation
Allocators, I/O streams, math, geometry, image and audio processing for D
- Host: GitHub
- URL: https://github.com/gecko0307/dlib
- Owner: gecko0307
- License: bsl-1.0
- Created: 2013-07-13T08:06:06.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2024-08-14T10:40:26.000Z (3 months ago)
- Last Synced: 2024-08-14T12:16:48.387Z (3 months ago)
- Topics: audio-processing, computational-geometry, containers, dlang, image-processing, json-parser, lexical-analysis, linear-algebra, memory-allocation, networking, threading, utility-library, xml-parser
- Language: D
- Homepage: https://gecko0307.github.io/dlib
- Size: 13.2 MB
- Stars: 216
- Watchers: 15
- Forks: 32
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: COPYING.md
- Code of conduct: CODE_OF_CONDUCT.md
- Authors: AUTHORS.md
Awesome Lists containing this project
- awesome-d - dlib.container - generic data structures (GC-free dynamic and associative arrays and more) (Containers / Bare metal / kernel development)
README
dlib is a high-level general purpose library written in [D language](https://dlang.org) for game and graphics developers. It provides basic building blocks for writing real-time and multimedia applications: containers, data streams, linear algebra and image decoders.
dlib has no external dependencies aside D's standard library. dlib is created and maintained by [Timur Gafarov](https://github.com/gecko0307).
[![GitHub Actions CI Status](https://github.com/gecko0307/dlib/workflows/CI/badge.svg)](https://github.com/gecko0307/dlib/actions?query=workflow%3ACI)
[![DUB Package](https://img.shields.io/dub/v/dlib.svg)](https://code.dlang.org/packages/dlib)
[![DUB Downloads](https://img.shields.io/dub/dm/dlib.svg)](https://code.dlang.org/packages/dlib)
[![License](http://img.shields.io/badge/license-boost-blue.svg)](http://www.boost.org/LICENSE_1_0.txt)
[![Codecov](https://codecov.io/gh/gecko0307/dlib/branch/master/graph/badge.svg)](https://codecov.io/gh/gecko0307/dlib)
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/gecko0307/dlib?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)If you like dlib, please support its development on [Patreon](https://www.patreon.com/gecko0307) or [Liberapay](https://liberapay.com/gecko0307). You can also make one-time donation via [NOWPayments](https://nowpayments.io/donation/gecko0307). I appreciate any support. Thanks in advance!
What's inside
-------------
Currently dlib consists of the following packages:
* [dlib.core](https://gecko0307.github.io/dlib/docs/dlib/core.html) - basic functionality used by other modules (memory management, streams, threads, etc.)
* [dlib.container](https://gecko0307.github.io/dlib/docs/dlib/container.html) - generic data structures (GC-free dynamic and associative arrays and more)
* [dlib.filesystem](https://gecko0307.github.io/dlib/docs/dlib/filesystem.html) - abstract FS interface and its implementations for Windows and POSIX filesystems
* [dlib.math](https://gecko0307.github.io/dlib/docs/dlib/math.html) - linear algebra and numerical analysis (vectors, matrices, quaternions, linear system solvers, interpolation functions, etc.)
* [dlib.geometry](https://gecko0307.github.io/dlib/docs/dlib/geometry.html) - computational geometry (ray casting, primitives, intersection, etc.)
* [dlib.image](https://gecko0307.github.io/dlib/docs/dlib/image.html) - image processing (8-bit, 16-bit and 32-bit floating point channels, common filters and convolution kernels, resizing, FFT, HDRI, animation, graphics formats I/O: JPEG, PNG/APNG, BMP, TGA, HDR)
* [dlib.audio](https://gecko0307.github.io/dlib/docs/dlib/audio.html) - sound processing (8 and 16 bits per sample, synthesizers, WAV export and import)
* [dlib.network](https://gecko0307.github.io/dlib/docs/dlib/network.html) - networking and web functionality
* [dlib.memory](https://gecko0307.github.io/dlib/docs/dlib/memory.html) - memory allocators
* [dlib.text](https://gecko0307.github.io/dlib/docs/dlib/text.html) - text processing, GC-free strings, Unicode decoding and encoding
* [dlib.serialization](https://gecko0307.github.io/dlib/docs/dlib/serialization.html) - data serialization (XML and JSON parsers)
* [dlib.random](https://gecko0307.github.io/dlib/docs/dlib/random.html) - random number generation
* [dlib.coding](https://gecko0307.github.io/dlib/docs/dlib/coding.html) - various data compression and coding algorithms
* [dlib.concurrency](https://gecko0307.github.io/dlib/docs/dlib/concurrency.html) - a thread pool.Supported Compilers
-------------------
dlib is automatically tested for compatibility with latest releases of DMD and LDC. Older releases formally are not supported, but in practice usually are, to some extent. There's no guaranteed support for GDC and other D compilers.Documentation
-------------
HTML documentation can be generated from source code using ddox (run `dub build -b ddox`) or Doxygen (run `doxygen`). Be aware that documentation is currently incomplete.* [Autogenerated documentation](https://gecko0307.github.io/dlib/docs/dlib.html)
* [Wiki](https://github.com/gecko0307/dlib/wiki)
* [Rationale](https://github.com/gecko0307/dlib/wiki/Rationale)
* [FAQ](https://github.com/gecko0307/dlib/wiki/FAQ)
* [Best Practices](https://github.com/gecko0307/dlib/wiki/Best-Practices)
* [Contributing Guidelines](https://github.com/gecko0307/dlib/blob/master/CONTRIBUTING.md)
* [Gitter chat room](https://gitter.im/gecko0307/dlib)License
-------
Copyright (c) 2011-2024 Timur Gafarov, Martin Cejp, Andrey Penechko, Vadim Lopatin, Nick Papanastasiou, Oleg Baharev, Roman Chistokhodov, Eugene Wissner, Roman Vlasov, Basile Burg, Valeriy Fedotov, Ferhat Kurtulmuş, João Lourenço, Ate Eskola, Aaron Nédélec, Alexander Perfilyev. Distributed under the Boost Software License, Version 1.0 (see accompanying file COPYING or at https://www.boost.org/LICENSE_1_0.txt).Sponsors
--------
Jan Jurzitza (WebFreak), Daniel Laburthe, Rafał Ziemniewski, Kumar Sookram, Aleksandr Kovalev, Robert Georges, Rais Safiullin (SARFEX), Benas Cernevicius, Koichi Takio, Konstantin Menshikov.Users
-----
* [Dagon](https://github.com/gecko0307/dagon) - 3D game engine for D
* [Electronvolt](https://github.com/gecko0307/electronvolt) - work-in-progress first person puzzle game
* [DagoBan](https://github.com/Timu5/dagoban) - Sokoban clone
* [DlangUI](https://github.com/buggins/dlangui) - native UI toolkit for D
* [rengfx](https://github.com/xdrie/rengfx) - game engine based on raylib
* [Voxelman](https://github.com/MrSmith33/voxelman) - voxel-based game engine
* [RIP](https://github.com/LightHouseSoftware/rip) - image processing and analysis library by LightHouse Software
* [GeneticAlgorithm](https://github.com/Hnatekmar/GeneticAlgorithm) - genetic algorithms library
* [Orb](https://github.com/claudemr/orb) - a game/engine with procedural content
* [Leptbag](https://github.com/thotgamma/LeptbagCpp) - physics simulator by Gamma-Lab. Written in C++, but supports D plugins
* [aoynthesizer](https://github.com/AODQ/aoynthesizer) - sound synthesizer based on Lisp-like scripting language
* [D-VXLMapPreview](https://github.com/rakiru/D-VXLMapPreview) - isometric preview generator for Ace of Spades and Iceball maps
* [SMSFontConverter](https://github.com/Doom2fan/SMSFontConverter) - a program for generating Sega Master System fonts
* [sacengine](https://github.com/tg-2/sacengine/) - engine reimplementation for the game Sacrifice
* [Shaders Playground](https://github.com/AntonC9018/shader_playground) - a sandbox project for experimenting with OpenGL shaders
* [wgpu-dlang](https://github.com/gecko0307/wgpu-dlang) - WebGPU usage example.