This is the ceramic Reference Manual, version 0.2, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 08 16:37:26 2024 GMT+0.
ceramic/ceramic.asd
ceramic/src/error.lisp
ceramic/src/os.lisp
ceramic/src/file.lisp
ceramic/src/logging.lisp
ceramic/src/runtime.lisp
ceramic/src/resource.lisp
ceramic/src/setup.lisp
ceramic/src/driver.lisp
ceramic/src/window.lisp
ceramic/src/crashreporter.lisp
ceramic/src/dialog.lisp
ceramic/src/bundler.lisp
ceramic/src/ceramic.lisp
ceramic/src/quit.lisp
The main system appears first, followed by any subsystem dependency.
ceramic
Common Lisp web apps on the desktop
Fernando Borretti <eudoxiahp@gmail.com>
Fernando Borretti <eudoxiahp@gmail.com>
(GIT git@github.com:ceramic/ceramic.git)
MIT
# [Ceramic](http://ceramic.github.io/)
[![Build Status](https://travis-ci.org/ceramic/ceramic.svg?branch=master)](https://travis-ci.org/ceramic/ceramic)
[![Coverage Status](https://coveralls.io/repos/ceramic/ceramic/badge.svg?branch=master&service=github)](https://coveralls.io/github/ceramic/ceramic?branch=master)
[![Quicklisp](http://quickdocs.org/badge/ceramic.svg)](http://quickdocs.org/ceramic/)
Common Lisp web apps on the desktop.
## Overview
Ceramic takes an ordinary Common Lisp web app, and bundles it into an executable
you can distribute, so your users can install it and run the app and server in a
dedicated desktop window like any other app.
See the [documentation](http://ceramic.github.io/docs/introduction.html).
## License
Copyright (c) 2015 Fernando Borretti
Licensed under the MIT License.
0.2
trivial-download
(system).
trivial-extract
(system).
trivial-exe
(system).
trivial-build
(system).
trivial-compress
(system).
electron-tools
(system).
uiop
(system).
cl-json
(system).
external-program
(system).
uuid
(system).
copy-directory
(system).
clack-handler-hunchentoot
(system).
remote-js
(system).
src
(module).
Modules are listed depth-first from the system components tree.
ceramic/src
ceramic
(system).
error.lisp
(file).
os.lisp
(file).
file.lisp
(file).
logging.lisp
(file).
runtime.lisp
(file).
resource.lisp
(file).
setup.lisp
(file).
main.js
(file).
driver.lisp
(file).
window.lisp
(file).
crashreporter.lisp
(file).
dialog.lisp
(file).
bundler.lisp
(file).
ceramic.lisp
(file).
quit.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
ceramic/ceramic.asd
ceramic/src/error.lisp
ceramic/src/os.lisp
ceramic/src/file.lisp
ceramic/src/logging.lisp
ceramic/src/runtime.lisp
ceramic/src/resource.lisp
ceramic/src/setup.lisp
ceramic/src/driver.lisp
ceramic/src/window.lisp
ceramic/src/crashreporter.lisp
ceramic/src/dialog.lisp
ceramic/src/bundler.lisp
ceramic/src/ceramic.lisp
ceramic/src/quit.lisp
ceramic/src/error.lisp
src
(module).
ceramic-error
(condition).
no-such-tag
(condition).
not-in-release
(condition).
unsupported-operating-system
(condition).
ceramic/src/os.lisp
error.lisp
(file).
src
(module).
*architecture*
(special variable).
*operating-system*
(special variable).
detect-architecture
(function).
detect-operating-system
(function).
ceramic/src/file.lisp
os.lisp
(file).
src
(module).
*ceramic-directory*
(special variable).
release-directory
(function).
wipe-data
(function).
ceramic/src/logging.lisp
file.lisp
(file).
src
(module).
*logging*
(special variable).
*logging-stream*
(special variable).
log-message
(function).
ceramic/src/runtime.lisp
logging.lisp
(file).
src
(module).
*releasep*
(special variable).
executable-pathname
(function).
executable-relative-pathname
(function).
ceramic/src/resource.lisp
runtime.lisp
(file).
src
(module).
copy-resources
(function).
define-resources
(macro).
resource
(function).
resource
(class).
resource-directory
(function).
*resources*
(special variable).
call-define-resources
(function).
get-resource
(function).
release-resources-directory
(function).
resource-pathname
(reader method).
resource-system
(reader method).
resource-tag
(reader method).
ceramic/src/setup.lisp
resource.lisp
(file).
src
(module).
setup
(function).
*electron-version*
(special variable).
+main-javascript+
(special variable).
+ws-module+
(special variable).
clean-release
(function).
copy-ws-module
(function).
insert-javascript
(function).
insert-package-definition
(function).
prepare-release
(function).
ceramic/src/driver.lisp
main.js
(file).
src
(module).
address
(generic function).
driver-context
(reader method).
(setf driver-context)
(writer method).
driver-js-cond
(reader method).
(setf driver-js-cond)
(writer method).
driver-js-lock
(reader method).
(setf driver-js-lock)
(writer method).
driver-process
(reader method).
(setf driver-process)
(writer method).
driver-responses
(reader method).
(setf driver-responses)
(writer method).
on-message
(generic function).
port
(generic function).
start-electron
(method).
start-remote-js
(method).
stop-electron
(method).
stop-remote-js
(method).
wait-for-client
(method).
ceramic/src/window.lisp
driver.lisp
(file).
src
(module).
back
(method).
center
(method).
close
(method).
close-dev-tools
(method).
copy
(method).
crashedp
(method).
cut
(method).
forward
(method).
hide
(method).
loadingp
(method).
make-window
(function).
open-dev-tools
(method).
paste
(method).
redo
(method).
reload
(method).
select-all
(method).
show
(method).
stop-loading
(method).
title
(method).
(setf title)
(method).
undo
(method).
unselect
(method).
url
(method).
(setf url)
(method).
window
(class).
window-id
(reader method).
%reload
(method).
%reload-force
(method).
define-trivial-operation
(macro).
js
(function).
sync-js
(function).
ceramic/src/crashreporter.lisp
window.lisp
(file).
src
(module).
start-crash-reporter
(function).
ceramic/src/dialog.lisp
crashreporter.lisp
(file).
src
(module).
show-error-box
(function).
show-message-box
(function).
show-open-dialog
(function).
show-save-dialog
(function).
+message-box-default-buttons+
(special variable).
+message-box-types+
(special variable).
file-filters
(function).
show-standard-dialog
(function).
ceramic/src/bundler.lisp
dialog.lisp
(file).
src
(module).
bundle
(function).
archive-extension
(function).
create-archive
(function).
ceramic/src/ceramic.lisp
bundler.lisp
(file).
src
(module).
define-entry-point
(macro).
start
(function).
stop
(function).
ceramic/src/quit.lisp
ceramic.lisp
(file).
src
(module).
quit
(function).
Packages are listed by definition order.
ceramic.error
ceramic.resource
ceramic-entry
ceramic.os
ceramic.crashreporter
ceramic.bundler
ceramic
ceramic.log
ceramic.setup
ceramic.window
ceramic.file
ceramic.driver
ceramic.dialog
ceramic.runtime
ceramic.error
Error conditions.
common-lisp
.
ceramic-error
(condition).
no-such-tag
(condition).
not-in-release
(condition).
unsupported-operating-system
(condition).
ceramic.resource
Ceramic’s resource-management utilities.
common-lisp
.
copy-resources
(function).
define-resources
(macro).
resource
(function).
resource
(class).
resource-directory
(function).
*resources*
(special variable).
call-define-resources
(function).
get-resource
(function).
release-resources-directory
(function).
resource-pathname
(generic reader).
resource-system
(generic reader).
resource-tag
(generic reader).
ceramic.os
Operating system-related stuff.
common-lisp
.
*architecture*
(special variable).
*operating-system*
(special variable).
detect-architecture
(function).
detect-operating-system
(function).
ceramic.crashreporter
Start Electron’s Crash Reporter.
common-lisp
.
start-crash-reporter
(function).
ceramic.bundler
Release applications.
common-lisp
.
bundle
(function).
archive-extension
(function).
create-archive
(function).
ceramic
The main interface.
common-lisp
.
define-entry-point
(macro).
quit
(function).
start
(function).
stop
(function).
ceramic.log
Logging.
common-lisp
.
*logging*
(special variable).
*logging-stream*
(special variable).
log-message
(function).
ceramic.setup
Set up everything needed to develop with Ceramic.
common-lisp
.
setup
(function).
*electron-version*
(special variable).
+main-javascript+
(special variable).
+ws-module+
(special variable).
clean-release
(function).
copy-ws-module
(function).
insert-javascript
(function).
insert-package-definition
(function).
prepare-release
(function).
ceramic.window
The window class and its implementation.
common-lisp
.
back
(generic function).
center
(generic function).
close
(generic function).
close-dev-tools
(generic function).
copy
(generic function).
crashedp
(generic function).
cut
(generic function).
forward
(generic function).
hide
(generic function).
loadingp
(generic function).
make-window
(function).
open-dev-tools
(generic function).
paste
(generic function).
redo
(generic function).
reload
(generic function).
select-all
(generic function).
show
(generic function).
stop-loading
(generic function).
title
(generic function).
(setf title)
(generic function).
undo
(generic function).
unselect
(generic function).
url
(generic function).
(setf url)
(generic function).
window
(class).
window-id
(generic reader).
%reload
(generic function).
%reload-force
(generic function).
define-trivial-operation
(macro).
js
(function).
sync-js
(function).
ceramic.file
Ceramic’s files and directory utilities.
common-lisp
.
*ceramic-directory*
(special variable).
release-directory
(function).
wipe-data
(function).
ceramic.driver
The Ceramic driver interface.
common-lisp
.
address
(generic function).
driver-context
(generic reader).
(setf driver-context)
(generic writer).
driver-js-cond
(generic reader).
(setf driver-js-cond)
(generic writer).
driver-js-lock
(generic reader).
(setf driver-js-lock)
(generic writer).
driver-process
(generic reader).
(setf driver-process)
(generic writer).
driver-responses
(generic reader).
(setf driver-responses)
(generic writer).
on-message
(generic function).
port
(generic function).
start-electron
(generic function).
start-remote-js
(generic function).
stop-electron
(generic function).
stop-remote-js
(generic function).
wait-for-client
(generic function).
ceramic.dialog
common-lisp
.
show-error-box
(function).
show-message-box
(function).
show-open-dialog
(function).
show-save-dialog
(function).
+message-box-default-buttons+
(special variable).
+message-box-types+
(special variable).
file-filters
(function).
show-standard-dialog
(function).
ceramic.runtime
Tools for execution during release.
common-lisp
.
*releasep*
(special variable).
executable-pathname
(function).
executable-relative-pathname
(function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
The OS architecture. Either @c(:64) or @c(:32).
The directory where Ceramic stores its files.
The global driver object.
Whether or not to log info.
The logging stream.
The operating system. Either @c(:linux), @c(:windows) or @c(:mac).
Dynamically bound to t when in release mode.
Define the application’s entry point.
Define resource tags for a system.
Compile the application to an executable, and ship it with its resources.
Copy all resource directories to @cl:param(directory).
Return the executable’s pathname.
Return an absolute pathname relative to the executable pathname.
Create a window.
Kill the Electron process and the Lisp process.
Pathname to the local copy of the Electron release.
Return the pathname of a resource relative to the directory of a resource tag.
Return the directory associated to a resource tag.
Set up everything needed to start developing.
Display a dialog that shows an error message.
Show a message box dialog.
Show an Open dialog.
Show a Save dialog.
Start the Electron process.
Stop the Electron process.
Wipe all Ceramic related data.
Evaluate a string of JavaScript in the Electron process.
Start the Electron process and the remote-js server.
Stop the Electron process and the remote-js server.
Synchronously evaluate JavaScript in the Electron process, returning a string containing the result of the evaluation.
The base class of Ceramic-related conditions.
condition
.
Signalled when the program references a resource tag that doesn’t exist.
Signalled when an operation that requires Ceramic to run in release mode is called in interactive mode.
The Ceramic driver.
address
.
(setf driver-context)
.
driver-context
.
(setf driver-js-cond)
.
driver-js-cond
.
(setf driver-js-lock)
.
driver-js-lock
.
(setf driver-process)
.
driver-process
.
(setf driver-responses)
.
driver-responses
.
js
.
on-message
.
port
.
start
.
start-electron
.
start-remote-js
.
stop
.
stop-electron
.
stop-remote-js
.
sync-js
.
wait-for-client
.
The Electron process.
The remote-js object.
remote-js:buffered-context
A lock object for js sync
(bordeaux-threads:make-lock "ceramic-js-sync")
A condition variable for js sync
(bordeaux-threads:make-condition-variable)
A hash table of message IDs to evaluation results.
hash-table
(make-hash-table :test (function equal))
A resource.
The resource tag.
symbol
:tag
This slot is read-only.
The directory, relative to the system directory.
common-lisp
.
pathname
:pathname
This slot is read-only.
The name of the system this resource is relative to.
keyword
:system
This slot is read-only.
A browser window.
%reload
.
%reload-force
.
back
.
center
.
close
.
close-dev-tools
.
copy
.
crashedp
.
cut
.
forward
.
hide
.
loadingp
.
open-dev-tools
.
paste
.
redo
.
reload
.
select-all
.
show
.
stop-loading
.
(setf title)
.
title
.
undo
.
unselect
.
(setf url)
.
url
.
window-id
.
The version of Electron to use.
The list of resources.
Pathname to the JavaScript file for the main process.
Use zip files on Windows and tar archives on Unix. This is necessary because tar archives preserve permissions (important for executing!), but Windows doesn’t care about that, and Windows doesn’t natively know about tar files (But most people can unzip).
Clean up default files from an Electron release.
Copy the WebSockets module.
Return the resource associated to a resource tag.
Insert the main process JavaScript into an Electron release.
Insert the package.json into an Electron release.
Prepare an Electron release.
The directory where resource directories are stored, relative to the executable pathname.
Return the address the WebSockets server is running on.
no-such-tag
)) ¶tag
.
Receive a message from a WebSockets client.
unsupported-operating-system
)) ¶Return the port the WebSockets server is running on.
Jump to: | %
(
A B C D E F G H I J L M O P Q R S T U W |
---|
Jump to: | %
(
A B C D E F G H I J L M O P Q R S T U W |
---|
Jump to: | %
*
+
C J O P R S T |
---|
Jump to: | %
*
+
C J O P R S T |
---|
Jump to: | B C D E F L M N O P Q R S U W |
---|
Jump to: | B C D E F L M N O P Q R S U W |
---|