{"id":26119561,"url":"https://github.com/mmontone/cl-xul","last_synced_at":"2026-03-10T02:01:11.460Z","repository":{"id":12040983,"uuid":"14626492","full_name":"mmontone/cl-xul","owner":"mmontone","description":"Mozilla XUL bindings for Common Lisp","archived":false,"fork":false,"pushed_at":"2016-03-01T16:46:48.000Z","size":625,"stargazers_count":29,"open_issues_count":0,"forks_count":3,"subscribers_count":7,"default_branch":"master","last_synced_at":"2023-03-11T09:26:58.355Z","etag":null,"topics":["common-lisp","gui","lisp"],"latest_commit_sha":null,"homepage":"http://mmontone.github.io/cl-xul","language":"Common Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mmontone.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-11-22T18:52:09.000Z","updated_at":"2022-09-01T02:16:39.000Z","dependencies_parsed_at":"2022-09-23T03:40:21.632Z","dependency_job_id":null,"html_url":"https://github.com/mmontone/cl-xul","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmontone%2Fcl-xul","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmontone%2Fcl-xul/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmontone%2Fcl-xul/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmontone%2Fcl-xul/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mmontone","download_url":"https://codeload.github.com/mmontone/cl-xul/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242856073,"owners_count":20196358,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["common-lisp","gui","lisp"],"created_at":"2025-03-10T12:55:28.054Z","updated_at":"2026-03-10T02:01:06.441Z","avatar_url":"https://github.com/mmontone.png","language":"Common Lisp","funding_links":[],"categories":[],"sub_categories":[],"readme":"CL-XUL\n------\n\n[![Quicklisp](http://quickdocs.org/badge/cl-xul.svg)](http://quickdocs.org/cl-xul/)\n[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE)\n\n[**CL-XUL**](https://github.com/mmontone/cl-xul) is a library that helps to create [**Mozilla XUL**](https://developer.mozilla.org/en/docs/XUL) user interfaces in Common Lisp.\n\nIt uses [IOlib](http://www.cliki.net/IOlib) based [clws](http://www.cliki.net/clws) library for the communication between the Mozilla XULRunner and Common Lisp via [web sockets](http://en.wikipedia.org/wiki/WebSocket). Because of the IOlib limitation, it works only on Linux at the moment, until a platform independent implementation of websockets is found. Also, I've only tried it from [SBCL](http://www.sbcl.org) so far.\n\nCL-XUL implements a component-based architecture, standard widgets support, easy communication between client and server and automatic view updates and a readable description of GUI directly in Common Lisp, with no need of external XML files.  \n\nIts implementation can be considered similar to that of the [Phobos](http://code.google.com/p/phobos-framework/) Smalltalk framework,  and to the javascript implementation [XULJet](https://code.google.com/p/xuljet/), although it is not quite the same.\n\nThis is still work in progress, and there's no documentation at the moment (it is coming soon, though) but a demo can be tried. \n\nAs of December 26 of 2013, CL-XUL can be obtained from [Quicklisp](http://www.quicklisp.org/).\nEvaluate `(ql:quickload :cl-xul)` to download and install the system, and `(ql:quickload :cl-xul-test)` followed by `(xul-test:showcase)` to run the demo.\n\nAlternatively, download the source code from here and point `cl-xul.asd` and `cl-xul-test.asd` system definition files from `./sbcl/system (ln -s \u003csystem definition file path\u003e)` and then evaluate:\n\n`(require :cl-xul-test)`\n\nand\n\n`(xul-test:showcase)`\n\nfrom your lisp listener. \n\nYou will also need to satisfy the system dependencies:\n\n- alexandria\n- log5\n- parenscript\n- cxml\n- cl-fad\n- closer-mop\n- clws\n- cl-json\n- md5\n\nThe easiest way of installing those packages is via [Quicklisp](http://www.quicklisp.org/).\n\nThis library is under the MIT licence.\n\nScreenshots\n-----------\n\n![Screenshot 1](https://raw.github.com/mmontone/cl-xul/master/doc/images/screenshot1.png)\n\n![Screenshot 2](https://raw.github.com/mmontone/cl-xul/master/doc/images/screenshot2.png)\n\n![Screenshot 3](https://raw.github.com/mmontone/cl-xul/master/doc/images/screenshot3.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmmontone%2Fcl-xul","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmmontone%2Fcl-xul","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmmontone%2Fcl-xul/lists"}