Ultralisp is a quicklisp distribution, updated as fast as you can push commits to the GitHub.

Work in progress, but you already can install some packages, like quickdist or weblocks from this repository.

How to use it

To use it, open your Lisp REPL and eval:

(ql-dist:install-dist "http://dist.ultralisp.org/"
                      :prompt nil)

How to add my own project

Add project's metadata to Ultralisp

Right now, adding a new project to the distribution is a manual process. To do this, create a new pull-request into the repository: https://github.com/ultralisp/ultralisp-projects

Your pull request should add another line to a file "projects.txt".

Setup a webhook for automatic distribution update

After that, add a webhook to your repository. Go to the url similar to: https://github.com/40ants/defmain/settings/hooks

and add a URL "http://ultralisp.org/webhook/github" as a webhook. This webhook should receive "push" payloads as application/json:


  • Plug in a real database to store projects' metadata and other information.
  • Integration with the GitHub to add projects in one click and authentication.
  • Support for project sources other than GitHub.
  • Automatic distribution's ChangeLog generation.
  • Running tests for updated project and all dependent systems.

Projects in the dist

40ants/defmain A helper to simplify command line arguments usage in Common Lisp
40ants/cl-info An utility which collects information about Common Lisp implementation and systems for bugreports
40ants/portable-ca-bundle A macro to restore Dexador's CA bundle when running LISP binary on a different machine
40ants/cl-hamcrest This library makes your CL unittests more readable.
40ants/ceramic Attention! This is a fork.
40ants/weblocks This fork was created to experiment with some refactorings. They are collected in branch "reblocks".
40ants/weblocks-websocket Websocket support for Common Lisp framework weblocks.
40ants/weblocks-ui A set of widget for Weblocks framework, to simplify UI elements creation. Based on Zurb's Foundation and jQuery.
40ants/weblocks-navigation-widget A widget which changes it's children when user goes to another URL
40ants/weblocks-stores This fork is fixed to work with 40ants/weblocks
40ants/weblocks-lass A helper for Weblocks framework to define widget dependencies in LASS syntax.
40ants/weblocks-parenscript An utility to define JavaScript dependencies for Weblocks widgets using Parenscript.
40ants/cldomain Helper for sphinxcontrib.cldomain to collect docstrings from Lisp systems.
40ants/cl-bitbar Utils to build BitBar plugins in CommonLisp
40ants/cl-yandex-metrika A client library for metrika.yandex.ru
40ants/cl-telegram-bot Telegram Bot API for Common Lisp
40ants/cl-link-header A library to parse content of the Link header
40ants/log4cl-json JSON appender for log4cl.
40ants/html2text A Common Lisp utility which converts HTML into Markdown text
ultralisp/quickdist Create a Quicklisp distribution from a directory of local projects.
fukamachi/prove Yet another unit testing framework for Common Lisp
fukamachi/clack Web server abstraction layer for Common Lisp
fukamachi/lack Lack, the core of Clack
fukamachi/woo A fast non-blocking HTTP server on top of libev
fukamachi/utopian A web framework for Common Lisp never finished.
fukamachi/mito An ORM for Common Lisp with migrations, relationships and PostgreSQL support
fukamachi/sxql An SQL generator for Common Lisp.
fukamachi/dexador A fast HTTP client for Common Lisp
fukamachi/quri Yet another URI library for Common Lisp
fukamachi/rove #1=(yet another . #1#) common lisp testing library
fukamachi/qlot A project-local library installer for Common Lisp