A terminal workspace with batteries included
Go to file
bjorn3 7d7848cddc
dependencies: switch from Wasmer to Wasmtime (#3349)
* Remove ForeignFunctionEnv wrapper around PluginEnv

This will enable PluginEnv to be the Store context when migrating to
Wasmtime.

* Pass PluginEnv by value to load_plugin_instance

This will allow removing the Clone impl from PluginEnv when migrating to
Wasmtime as required by the missing Clone impl on Wasmtime's WasiCtx.

* Avoid passing a Store around when an Engine is enough

* Pass PluginEnv to the wasi read/write functions

Wasmtime requires storing the read/write end of the pipe outside of the
WasiCtx. Passing PluginEnv to these functions allows storing them in the
PluginEnv.

* Migrate to Wasmtime

* Switch from wasi-common to wasmtime-wasi

* Reduce verbosity of wasmtime_wasi logs

* Increase startup delay

To wait for all plugins to be compiled.

* Disable some wasmtime features

* Update to Wasmtime 21.0.1
2024-06-28 16:47:43 +02:00
.cargo Use rust 1.67 (#2375) 2023-05-09 02:43:28 +00:00
.github chore(repo): update issue templates 2023-12-28 16:46:14 +01:00
assets chore(assets): adjust logo (#2358) 2023-04-12 15:04:01 +02:00
default-plugins feat(plugins): rebind keys at runtime (#3422) 2024-06-14 17:11:02 +02:00
docs docs: Update Arch Linux package URL in THIRD_PARTY_INSTALL.md (#2956) 2023-12-01 18:51:32 +01:00
example chore(release): v0.40.0 2024-04-16 09:15:13 +02:00
src dependencies: switch from Wasmer to Wasmtime (#3349) 2024-06-28 16:47:43 +02:00
xtask fix(terminal): improve reflow performance and general memory usage by reducing size of TerminalCharacter (#3043) 2024-01-22 15:28:57 +01:00
zellij-client feat(plugins): rebind keys at runtime (#3422) 2024-06-14 17:11:02 +02:00
zellij-server dependencies: switch from Wasmer to Wasmtime (#3349) 2024-06-28 16:47:43 +02:00
zellij-tile feat(plugins): rebind keys at runtime (#3422) 2024-06-14 17:11:02 +02:00
zellij-tile-utils chore(version): bump development version 2024-05-02 10:43:25 +02:00
zellij-utils dependencies: switch from Wasmer to Wasmtime (#3349) 2024-06-28 16:47:43 +02:00
.editorconfig add: editorconfig (#1156) 2022-03-02 12:12:26 +01:00
.gitignore chore(repo): remove nix support (#2038) 2022-12-20 12:24:19 +01:00
.rustfmt.toml add(style): add trailing comma in match blocks (#1483) 2022-06-10 20:03:13 +02:00
Cargo.lock dependencies: switch from Wasmer to Wasmtime (#3349) 2024-06-28 16:47:43 +02:00
Cargo.toml chore(version): bump development version 2024-05-02 10:43:25 +02:00
CHANGELOG.md docs(changelog): mouse fix 2024-06-21 16:20:03 +02:00
CODE_OF_CONDUCT.md docs(coc): initial 2020-10-27 11:11:10 +01:00
CONTRIBUTING.md dependencies: switch from Wasmer to Wasmtime (#3349) 2024-06-28 16:47:43 +02:00
docker-compose.yml fix(docker-compose): Use the key-value style for environments to prevent human errors (#840) 2021-11-09 20:29:22 +01:00
GOVERNANCE.md docs(governance): Project Governance Change (#2174) 2023-02-17 23:10:39 +01:00
LICENSE.md Update references of mosaic to Zellij in md files 2021-02-10 12:12:19 +05:30
Makefile.toml Makefile: Fix CI ordering/dependencies (#2004) 2022-12-09 11:06:11 +00:00
README.md docs(readme): add name origin section (#3391) 2024-06-14 11:13:11 +02:00
rust-toolchain.toml Bump rust version to 1.75.0 (#3039) 2024-01-08 16:56:01 +00:00


logo
Zellij

Discord Chat Matrix Chat Zellij documentation

demo

[Installation] [Screencasts & Tutorials] [Configuration] [Layouts] [FAQ]

What is this?

Zellij is a workspace aimed at developers, ops-oriented people and anyone who loves the terminal. Similar programs are sometimes called "Terminal Multiplexers".

Zellij is designed around the philosophy that one must not sacrifice simplicity for power, taking pride in its great experience out of the box as well as the advanced features it places at its users' fingertips.

Zellij is geared toward beginner and power users alike - allowing deep customizability, personal automation through layouts, true multiplayer collaboration, unique UX features such as floating and stacked panes, and a plugin system allowing one to create plugins in any language that compiles to WebAssembly.

You can get started by installing Zellij and checking out the Screencasts & Tutorials.

For more details about our future plans, read about upcoming features in our roadmap.

How do I install it?

The easiest way to install Zellij is through a package for your OS.

If one is not available for your OS, you could download a prebuilt binary from the latest release and place it in your $PATH. If you'd like, we could automatically choose one for you.

You can also install (compile) with cargo:

cargo install --locked zellij

Try Zellij without installing

bash/zsh:

bash <(curl -L zellij.dev/launch)

fish/xonsh:

bash -c 'bash <(curl -L zellij.dev/launch)'

How do I start a development environment?

  • Clone the project
  • In the project folder, for debug builds run: cargo xtask run
  • To run all tests: cargo xtask test

For more build commands, see CONTRIBUTING.md.

Configuration

For configuring Zellij, please see the Configuration Documentation.

What is the current status of the project?

Zellij should be ready for everyday use, but it's still classified as a beta. This means that there might be a rare crash or wrong behaviour here and there, but that once found it should be fixed rather quickly. If this happens to you, we would be very happy if you could open an issue and tell us how to reproduce it as best you can.

Roadmap

Presented here is the project roadmap, divided into three main sections.

These are issues that are either being actively worked on or are planned for the near future.

If you'll click on the image, you'll be led to an SVG version of it on the website where you can directly click on every issue

roadmap

Origin of the Name

From Wikipedia, the free encyclopedia

Zellij (Arabic: الزليج, romanized: zillīj; also spelled zillij or zellige) is a style of mosaic tilework made from individually hand-chiseled tile pieces. The pieces were typically of different colours and fitted together to form various patterns on the basis of tessellations, most notably elaborate Islamic geometric motifs such as radiating star patterns composed of various polygons. This form of Islamic art is one of the main characteristics of architecture in the western Islamic world. It is found in the architecture of Morocco, the architecture of Algeria, early Islamic sites in Tunisia, and in the historic monuments of al-Andalus (in the Iberian Peninsula).

License

MIT

Sponsored by