Skip to content

LivelyKernel/lively.next

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lively.next

Daily lively.next Status Check Join our Chat room on Matrix

This is the repository of the lively.next project.

Warning

lively.next is alpha software and under heavy development.

You are very welcome to play with it! But please be aware, that there are no guarantees regarding the stability of APIs etc.

In case you want to experiment with lively.next, please feel free to join our Matrix Chatroom (#lively.next:matrix.org) and ask all the questions you want!

Setup

You need to install lively.next on your system.

Installation Requirements

Currently, MacOS, Linux, and the Linux Subsystem for Windows are supported. Make sure you have the following software installed:

  1. node.js v20.10
  2. git.

We try to require/support the current LTS version of node.

For some more advanced development operations (bulk testing from the command line), you will also need

  • sed or gsed on MacOs
  • ss or netstat on MacOs
  • perl
  • python3 with sultan installed
  • brotli
  • aspell.

Tip

If you want to change files outside of lively (i.e., in a normal editor), while still having the changes be available in lively when opening the file, you'll need to install entr from its repository. Usually, when working inside of lively.next, this will not be an issue, but it can be handy when working heavily on the core of lively.

Installation Instructions

  1. Clone this repository and run the install.sh script. This will install the necessary dependencies. Please note, that this process will take a few minutes.
  2. Run the start.sh script.
  3. Lively will now be running on your local computer at http://localhost:9011.

Tip

You can use start.sh with a --debug or -d flag to inspect the lively server with a node debugger. You can also use --port=<PORT> or -p <PORT> to specify on which port the lively server should run.

Usually, running start.sh will now be enough to get you going again.

Updating lively.next

When a new version of lively.next is available, the Version Indicator in the lower-left corner will look like this:

A GIF showing an orange arrow. The arrow is bouncing and points to the text 'Press here to update'

Pressing will start the update process, automatically restart the server and prompt you to reload your lively session. Please make sure to save all your progress before updating.

Manually updating can be done by pulling the latest version and just executing install.sh again. The server needs to be restarted afterwards and you need to reload your lively session.


Please note, that these instructions currently are not recommended for openly deploying lively.next in the web!

Important

This does not mean that you cannot deploy applications built with lively.next. Of course, frozen applications can be served via any hoster!

However, making a development server publicly available is highly discouraged, as it comes with unfiltered access to the local file system and shell, among other things.

Documentation

Some hints and documentation can be found in the project wiki.

The actual documentation can be found here.

Contributing

Please make sure to run make hooks from the root of the repository before starting to develop.

Please adhere to the following convention for commit messages:

affected package(s): what was changed (first letter lower case). The first line should not be longer than 72 characters.

The packages are coded with emojis as follows:

  • 2lively: 🗨️
  • ast: 🌳
  • bindings: 🎀
  • changesets: 🔣
  • CI/scripts/docs: 🛠️
  • classes: 🧑‍🏫
  • collab: 💭
  • components: 🎛️
  • context: 🗺️
  • flatn: 🫓
  • freezer: ❄️
  • git: 🛤️
  • graphics: 🖌️
  • halos: 👼
  • headless: 🤕
  • ide: 🧰
  • installer: 📦
  • keyboard: ⌨️
  • lang: 📙
  • modules: 🧩
  • morphic: 🎨
  • notifications: 🔔
  • project: 📂
  • resources: 🪨
  • README: 🗒️
  • serializer2: 📇
  • server: 👔
  • shell: 🐚
  • source-transform: 🔁
  • storage: 💾
  • system-interface: 📠
  • traits: ⚙️
  • user: 👤
  • vm: 🖥️

License

This project is MIT licensed.