svd/README.md
2023-01-30 14:55:37 +00:00

2 KiB

Scalable Vector Desktop

An experimental desktop/window manager implemented as a single Scalable Vector Graphics document.

Overview

Vector computer displays are not new. Some of the very earliest computer visual display units were natively vector; more recently, NeXTStep used Display Postscript to create an essentially vector display.

Vector displays have many advantages: they are intrinsically scalable, meaning they can be zoomed arbitrarily without ugly artifacts, and they can adapt cleanly to the physical resolution of the device being used.

Vector representations can also be easily represented as lists, making them easy to manipulate in virtually any computer language, but that they have a special affinity to Lisps.

Programme

This project (svd) is essentially experimental/proof of concept. The end goal is a window manager for the Post Scarcity Software System, which will almost certainly never be completed. So I don't imagine this project will be directly useful to anyone, except as a proof of concept.

Setup

To get an interactive development environment run:

lein figwheel

and open your browser at localhost:3449. This will auto compile and send all changes to the browser without the need to reload. After the compilation process is complete, you will get a Browser Connected REPL. An easy way to try it is:

(js/alert "Am I connected?")

and you should see an alert in the browser window.

To clean all compiled files:

lein clean

To create a production build run:

lein do clean, cljsbuild once min

And open your browser in resources/public/index.html. You will not get live reloading, nor a REPL.

License

Copyright © 2023 Simon Brooke

Distributed under the GNU General Public License either version 2.0 or (at your option) any later version.