A terminal workspace with batteries included
Go to file
a-kenji b82d9c67db
add: .git-blame-ignore-revs file (#1295)
Add `.git-blame-ignore-revs` file. That way we can accept `fmt` and
`clippy` PR's, that change quite a bit of our codebase without
negatively impacting the functionality of `git blame`.

Anyone wishing to use this file can set:
```
$ git config blame.ignoreRevsFile .git-blame-ignore-revs
```
2022-04-04 19:58:28 +02:00
.github build(deps): bump actions/cache from 2 to 3 (#1277) 2022-03-28 15:05:33 +02:00
assets chore(release): v0.27.0 2022-03-31 14:41:42 +02:00
default-plugins Improve theme usage + add default ones (#1274) 2022-04-02 03:19:42 +05:30
docs docs: add installation instructions for Void Linux (#1165) 2022-03-04 08:10:50 +01:00
example Improve theme usage + add default ones (#1274) 2022-04-02 03:19:42 +05:30
nix add(ci): install cargo-make through nix (#1233) 2022-03-17 14:00:48 +01:00
src fix(compatibility): ansi scroll down (#1279) 2022-03-28 12:39:54 +02:00
zellij-client chore(version): bump development version 2022-03-31 15:07:18 +02:00
zellij-server chore(version): bump development version 2022-03-31 15:07:18 +02:00
zellij-tile chore(version): bump development version 2022-03-31 15:07:18 +02:00
zellij-tile-utils chore(version): bump development version 2022-03-31 15:07:18 +02:00
zellij-utils Improve theme usage + add default ones (#1274) 2022-04-02 03:19:42 +05:30
.editorconfig add: editorconfig (#1156) 2022-03-02 12:12:26 +01:00
.envrc fix: .envrc 2022-03-11 18:37:43 +01:00
.git-blame-ignore-revs add: .git-blame-ignore-revs file (#1295) 2022-04-04 19:58:28 +02:00
.gitignore add: result-* to gitignore (#1144) 2022-02-28 08:17:54 +01:00
Cargo.lock chore(version): bump development version 2022-03-31 15:07:18 +02:00
Cargo.toml chore(version): bump development version 2022-03-31 15:07:18 +02:00
CHANGELOG.md Improve theme usage + add default ones (#1274) 2022-04-02 03:19:42 +05:30
CODE_OF_CONDUCT.md docs(coc): initial 2020-10-27 11:11:10 +01:00
CONTRIBUTING.md docs(contrib): fix markup 2022-03-04 17:43:31 +01:00
default.nix fix(nix): fix makeDesktopItem (#1215) 2022-03-13 13:43:29 +01: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
flake.lock flake.lock: Update (#1291) 2022-04-03 12:51:18 +02:00
flake.nix add(nix): treefmt / alejandra (#1201) 2022-03-10 16:27:39 +01:00
GOVERNANCE.md docs(governance): add myself to governance 2022-01-07 23:46:57 +09:00
LICENSE.md Update references of mosaic to Zellij in md files 2021-02-10 12:12:19 +05:30
Makefile.toml fix: release tagging (#1223) 2022-03-16 11:10:33 +01:00
README.md add(readme): built-with-nix badge (#1220) 2022-03-15 20:12:30 +01:00
rust-toolchain Update rust-toolchain (#1236) 2022-03-17 17:28:50 +01:00
shell.nix fix(nix): fix makeDesktopItem (#1215) 2022-03-13 13:43:29 +01:00
test-template.yaml chore: update example layout (#926) 2021-12-09 18:38:18 +01:00
treefmt.toml add(nix): treefmt / alejandra (#1201) 2022-03-10 16:27:39 +01:00


logo
Zellij

Discord Chat Matrix Chat Zellij documentation Built with nix

demo

What is this?

Zellij is a workspace aimed at developers, ops-oriented people and anyone who loves the terminal. At its core, it is a terminal multiplexer (similar to tmux and screen), but this is merely its infrastructure layer.

Zellij includes a layout system, and a plugin system allowing one to create plugins in any language that compiles to WebAssembly.

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

Zellij was initially called "Mosaic".

How do I install it?

You can install with cargo:

cargo install zellij

Or if want to a prebuilt binary, you can download it from our Releases, or use cargo-binstall.

cargo-binstall zellij

Or you can also use Third Party Repositories.

The default plugins make use of characters that are mostly found in nerdfonts. To get the best experience either install nerdfonts, or use the simplified ui by starting Zellij with zellij options --simplified-ui true, or putting simplified_ui: true in the config file.

How do I get involved?

Zellij is a labour of love built by an enthusiastic team of volunteers. We eagerly welcome anyone who would like to join us, regardless of experience level, so long as they adhere to our code of conduct.

Please report any code of conduct violations to aram@poor.dev

To get started, you can:

  1. Take a look at the "Issues" in this repository - especially those marked "Good first issue". Those with the "Help Wanted" tag probably don't have anyone else working on them.
  2. Drop by our chat and ask what you can work on, or how to get started.
  3. Open an issue with your idea(s) for the project or tell us about them in our chat.

How do I start a development environment?

  • Clone the project
  • Install cargo-make with cargo install --force cargo-make
  • In the project folder, for debug builds run: cargo make run
  • To run all tests: cargo make 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

This section contains an ever-changing list of the major features that are either currently being worked on, or planned for the near future.

Feature Description Status
Share sessions with others See the focused window and cursor of other users, work on a problem or a code base together in real time.
(implemented in 0.23.0)
A web client/server Connect to Zellij through the browser instead of opening a terminal window. Either on a local or remote machine.
Support for multiple terminal windows across screens Transfer panes across different windows and screens by having them all belong to the same session.
Smart layouts Expand the current layout system so that it rearranges and hides panes intelligently when new ones are added or the window size is changed.

License

MIT