https://github.com/s-ol/alive
experimental livecoding environment with persistent expressions
https://github.com/s-ol/alive
alive alv creative language lisp livecoding lua moonscript osc realtime vjing
Last synced: about 1 month ago
JSON representation
experimental livecoding environment with persistent expressions
- Host: GitHub
- URL: https://github.com/s-ol/alive
- Owner: s-ol
- License: gpl-3.0
- Created: 2020-02-02T11:45:28.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2022-10-20T14:51:25.000Z (over 2 years ago)
- Last Synced: 2025-03-18T02:44:25.899Z (about 1 month ago)
- Topics: alive, alv, creative, language, lisp, livecoding, lua, moonscript, osc, realtime, vjing
- Language: MoonScript
- Homepage: https://alv.s-ol.nu
- Size: 577 KB
- Stars: 39
- Watchers: 3
- Forks: 0
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# alive-coding
This is an experimental livecoding language and environment, in which
expressions persist and update until they are removed from the source code, and
the interpreter keeps no state that you cannot manipulate directly in the
source. This yields a direct-manipulation like experience with a purely
text-based language and works without special editor support.This README contains a short overview over installation and development
processes. For more information, visit the full [online documentation][docs].## dependencies
- [MoonScript][moonscript]: `luarocks install moonscript`
- [luafilesystem][lfs]*: `luarocks install luafilesystem`
- [LPeg][lpeg]*: `luarocks install lpeg`
- [socket][socket]: `luarocks install luasocket`
- [system][system]: `luarocks install luasystem`
- [losc][losc]: `luarocks install losc` (optional)
- [lua-rtmidi][rtmidi]: `luarocks install lua-rtmidi` (optional)
- [busted][busted]: `luarocks install busted` (optional, for tests)
- [discount][discount]: `luarocks install discount` (optional, for docs)
- [ldoc][ldoc]: `luarocks install
https://raw.githubusercontent.com/s-ol/LDoc/moonscript/ldoc-scm-2.rockspec`
(optional, for docs)\* these are also `moonscript` dependencies and do not neet to be installed
manually.## docs
With `make` the HTML documentation is generated in `docs/`.
The latest documentation is publicly available online at [alv.s-ol.nu][docs].
## starting the copilot$ bin/alv examples/hello.alv
For more information see the [getting started guide][guide].### LÖVE / visuals
To use the 'love' module for relatime 2d graphics, the copilot needs to be
started using [love2d][love] (0.11+):$ bin/alv-love examples/love2d.alv
## running the tests
The tests use the [busted][busted] Lua unit testing framework. To run all
tests, simply start busted in the main directory:$ busted
To run individual test files, for example to speed up execution during
development, simply pass the files as arguments:$ busted spec/value_spec.moon
[moonscript]: https://moonscript.org/
[lfs]: https://keplerproject.github.io/luafilesystem/
[lpeg]: http://www.inf.puc-rio.br/~roberto/lpeg/
[losc]: https://github.com/davidgranstrom/losc
[system]: https://github.com/o-lim/luasystem
[socket]: http://w3.impa.br/~diego/software/luasocket/
[rtmidi]: https://github.com/s-ol/lua-rtmidi/
[busted]: https://olivinelabs.com/busted/
[discount]: https://luarocks.org/modules/craigb/discount
[ldoc]: https://github.com/s-ol/LDoc
[love]: https://love2d.org/[docs]: https://alv.s-ol.nu
[guide]: https://alv.s-ol.nu/guide.html