About Shinmera - Nicolas Hafner

Projects

3d-matrices

image

A matrix algebra library, as a companion to 3d-vectors. While primarily intended for tasks in 3D graphics, this also implements several general linear algebra algorithms.

  • Release

3d-vectors

image

A system implementing common vector arithmetic operations, especially focused on the tools used in 3D graphics.

  • Release

Atomics

A portability library for atomic operations such as Compare And Swap (CAS) and others.

  • Release

cari3s

A system for the generation of i3 window manager status bars. Allows observing and outputting a variety of system status information.

  • Release

Chirp

image

An API client library for Twitter. It implements all publicly documented endpoints.

  • Release

cl-all

A simple system to run Lisp snippets in multiple implementations at once. This is especially useful to compare implementation behaviour for under- or unspecified areas, or to test libraries for compatibility.

  • Release

cl-flac

A wrapper library around libflac, exposing its functionality to Lisp.

  • Release

cl-fond

A wrapper library around libfond, exposing its functionality to Lisp.

  • Release

cl-gamepad

A portability library for access to gamepads and joysticks.

  • Release

cl-gpio

A library for the Linux GPIO driver as found on Raspberry Pi and similar devkit boards.

  • Release

cl-k8055

A wrapper library for the k8055 USB ADC board.

  • Release

cl-markless

A compiler for the Markless document standard. It includes several systems for outputting as well. Currently allows parsing Markdown to Markless, and Markless to HTML, EPUB, or Markless. Also includes a standalone executable system so that Markless documents can be compiled without requiring a Lisp environment.

  • Release

cl-mixed

A bindings library for libmixed, exposing and integrating its functionality with Lisp.

  • Release
  • v2

cl-monitors

A portability library for access to the display resolution.

  • Release

cl-mpg123

A wrapper library for the MPG123 library that allows fast MP3 decoding.

  • Release

cl-out123

A wrapper library for the OUT123 library providing simple cross-platform audio output.

  • Release

cl-soloud

A bindings library for the SoLound sound server library.

  • Release

cl-spidev

A library for the Linux SPIDEV driver as found on Raspberry Pi and similar devkit boards.

  • Release

Clip

image

An HTML templating system that bases its templates on valid HTML markup, allowing for easy prototyping.

  • Release

Clss

image

A library to select nodes from a DOM via CSS3 selectors. Operates on the Plump DOM.

  • Release

Colleen

A modular IRC bot framework that has since been superseded by Maiden.

  • Release

Deeds

An optimising event delivery system.

  • Release

Deferred

A library to allow the deferred execution of code depending on the presence of other systems.

  • Release

Definitions

A system for the discovery and introspection of Lisp source definitions. This includes, but is not limited to functions, macros, variables, classes, and structs. It can be extended to support custom user-defined definition types as well.

  • Release

documentation-utils

A set of very simple tools to help with the documentation of libraries.

  • Release

Flare

image

An animation system, particularly for precise particle animation. Allows rewinding and convenient animation definition.

  • Release

float-features

A portability library for IEEE float features that are not covered by the Common Lisp standard.

  • Release

Flow

image

A general flow-chart graph processing library.

  • Release

For

image

An alternate looping macro. It has a stricter form that LOOP and ITERATE, but is easier to read and doesn't require a code-walker.

  • Release

form-fiddle

A library for the wrangling of lambda-expressions. Allows extracting and destructuring of various parts of a lambda/body expression.

  • Release

glsl-toolkit

A tooklit for parsing and analysing OpenGL Shader Language (GLSL) code.

  • Release

Halftone

A very minimalist image viewer written with Qtools.

  • Release

Harmony

A real-time sound processing server implementation in Lisp. It offers sound output backends, including native implementations for Windows, Linux, and Mac OS. Based on libmixed/cl-mixed, it offers a breath of tools for real-time sound processing.

  • Release
  • v2

Humbler

An API client library for the Tumblr microblog service. Implements all public API endpoints.

  • Release

Iclendar

A library implementing the full iCalendar (RFC5545) spec to allow generating conforming iCalendar files.

  • Release

Inkwell

An API client for the Nintendo Splatoon SplatNet.

  • Release

keyword-reviews

An experimental review site for Radiance. Every review is limited to a single term.

  • Release

Kizai

Kizai was a rather brief attempt at creating a chat bot framework in Java. It has been superseded by Maiden.

  • Release

lambda-fiddle

A library for the wrangling of lambda-lists. Allows extracting and destructuring of various parts of a lambda-list.

  • Release

language-codes

A system for the encoding and decoding of universal language codes (ISO-639).

  • Release

Lass

A compiler for a lispy language to CSS. Allows writing CSS files in a much more comfortable fashion.

  • Release

Leaf

Leaf (working title) is an independent game project. Once I figure out more I'll make a dedicated page for it.

  • Started work

Legit

A wrapper library for the GIT command line utility.

  • Release

Libflac

A very simple C library for reading FLAC files.

  • Release

Libfond

A library for simple TTF file font rendering in OpenGL.

  • Release

Libmixed

A C library for real-time sound mixing and processing.

  • Release
  • v2

lichat-js

An implementation of the Lichat protocol and client-side mechanisms in plain JavaScript. It also includes a ready-made UI that can be easily integrated into other sites.

  • Release

lichat-ldap

A backend for the lichat-serverlib that allows user accounts to be looked up in an LDAP server.

  • Release

lichat-protocol

This system is both an implementation and a specification for the Lichat chat protocol. It presents a simple, text-based protocol for a multi-user, multi-channel chat system.

  • Release

lichat-serverlib

An implementation of the server-side protocol of Lichat. This component is wire-agnostic, meaning it can be used to drive a TCP, WS, etc. server.

  • Release

lichat-tcp-client

A basic TCP-based client for Lichat.

  • Release

lichat-tcp-server

An implementation of a TCP-based server for Lichat.

  • Release

lichat-ws-server

An implementation of a WebSockets-based server for Lichat.

  • Release

Lionchat

A Qt desktop chat client for Lichat.

  • Release

lQuery

lQuery is a system for HTML traversal and manipulation, modelled after the jQuery library. It is based on the Plump and CLSS libraries.

  • Release
  • v3

Maiden

A modular, extensible chat client system. It offers both a way to write chat bots and chat clients that can interact with a multitude of different chat protocols and servers. The base distribution also includes several ready-made systems for bot and connectivity functionality.

  • Release

Markless

A new text markup language that hopes to be easy to learn and fast to parse.

  • Started work
  • v0.3
  • v1.0

Mmap

A portability library for the memory-map functionality exposed by most main-stream operating systems. Supports Windows, Linux, and Posix.

  • Release

Modularize

A system for storing metadata alongside packages.

  • Release

modularize-hooks

An add-on to Modularize that allows the definition of hooks and triggers.

  • Release

modularize-interfaces

An add-on to Modularize that allows the definition of abstract interfaces that another package can implement.

  • Release

multilang-documentation

This library provides a replacement for the Common Lisp DOCUMENTATION function, to allow the specification of alternate docstrings depending on a desired language.

  • Release

Multiposter

A system to post content like images, text, etc. to multiple platforms simultaneously.

  • Release

North

image

A complete implementation of the oAuth 1.0a protocol for both servers and clients.

  • Release

Oxenfurt

An API client library for the Oxford dictionary services.

  • Release

pango-markup

A small library implementing the Pango text markup in a more Lispy way.

  • Release

Parachute

image

A testing framework geared towards being extensible. As proof of its flexibility it implements several thin wrappers that emulate other testing frameworks' API.

  • Release

Parasol

A painting application written in Common Lisp and Qt4. It has undergone several complete rewrites and is currently abandoned due to architectural difficulties that haven't been solved yet.

  • Started work

pathname-utils

A collection of functions to help deal with Common Lisp pathnames.

  • Release

Pesterchum

Pesterchum was a project to model a chat client after one seen in a webcomic. It has long since been abandoned.

  • Release
  • TinyChum

Piping

An abstract system to model message systems via pipelines constructed out of segments that filter, spread, or modify messages.

  • Release

Plaster

A paste service for Radiance. Uses the Code-Mirror system to provide a convenient end-user experience, and works even without JavaScript support.

  • Release

Plump

image

A fast HTML/XML parser geared towards being able to parse even heavily malformed documents.

  • Release

Portacle

A portable common lisp IDE, available on Mac OS, Windows, and Linux as a simple, standalone extractable archive. Bundles Emacs, SBCL, ASDF, Quicklisp, GIT, and AG.

  • Release

Purplish

An imageboard/forums software for Radiance. Allows multiple boards, threads, multi-file posts, etc.

  • Release

qt-libs

A portability library supplying you with a ready-to-use set of libraries for Qt4 development.

  • Release

Qtools

A set of utilities and constructs to allow a much more convenient way of writing Qt applications from Lisp.

  • Release
  • v2

qtools-ui

image

A set of components and tools that provide ready-to-use elements for Qt applications.

  • Release

Radiance

image

Radiance is a modular web application environment.

  • Started work
  • Finished phase 1
  • v1
  • v2

random-state

A library that presents a common interface for a variety of pseudo random number generators.

  • Release

Ratify

A library for input validation, specifically for website form data.

  • Release

Reader

A multi-user blogging system for Radiance. Allows tags and series, and provides both Markless, Markdown, and HTML blog format options.

  • Release

simple-inferiors

A portability library for the handling and execution of subprocesses.

  • Release

simple-tasks

A simple task scheduling framework for background execution.

  • Release

South

image

A library for easy interaction with oAuth 1.0a services. Has since been superseded by North.

  • Release

Staple

image

A documentation bundling system that can aggregate docstrings and documentation pages, including cross-references. It also allows heavy customisation of almost every part of the process and the resulting output.

  • Release

Studio

An image gallery hosting software for Radiance. Allows per-user galleries, tagging, multi-file uploads, automated incremental pageination, and more.

  • Release

studio-client

An API client library for the Studio image hosting service.

  • Release

system-locale

A system to allow the discovery of the system's locale and thus the user's preferred language environment.

  • Release

Terrable

A parser library for the Terragen height-map file format.

  • Release

Tooter

An API client library for Mastodon. It implements the full public API for applications.

  • Release

Trial

A project to build a modular game engine in Common Lisp. It has already been used for a few small game projects.

  • Started work

trivial-arguments

A portability library to retrieve the lambda-list of a function.

  • Release

trivial-benchmark

A quick&dirty benchmarking system.

  • Release

trivial-indent

A portability library for editor indentation hints.

  • Release

trivial-main-thread

A portability library to execute tasks on the main thread of the application.

  • Release

trivial-mimes

A simple tool for retrieving the mime-type of files or file types.

  • Release

TyNET

TyNET was a web framework written in PHP. It has been superseded by Radiance.

  • v1
  • v2 Glow
  • v3 Shine
  • Purplish
  • v4 Luminate

Ubiquitous

image

A universal configuration library with convenient standard storage location and configuration value access.

  • Release

universal-config

A universal configuration file library for easy configuration storage and retrieval. This project is deprecated and has been superseded by Ubiquitous.

  • Release

Verbose

image

A high-performance, thread-aware logging system, using Piping for message coordination.

  • Release

XenCL

XenCL was a project to present an API for XenForo forums by crawling and extracting information from raw HTML pages.

  • Release