Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Go
  3. elvish

elvish

BSD-2-ClauseGov0.21.0

A powerful scripting language and versatile interactive shell with modern features and a statically linked binary.

Visit WebsiteGitHubGitHub
6.3k stars326 forks0 contributors

What is elvish?

Elvish is a modern shell and scripting language that combines an expressive programming language with a versatile interactive shell. It provides built-in features like syntax highlighting, command history, and structured data pipelines, eliminating the need for many external tools. The project delivers a statically linked binary that runs on Linux, BSDs, macOS, and Windows without dependencies.

Target Audience

System administrators, DevOps engineers, and developers who work extensively in the command line and want a more powerful, modern alternative to traditional shells like Bash or Zsh.

Value Proposition

Developers choose Elvish for its integrated design where the shell and scripting language are built together, offering a cohesive experience with modern programming features, structured data pipelines, and built-in utilities that reduce reliance on external tools.

Overview

Powerful scripting language & versatile interactive shell

Use Cases

Best For

  • Writing complex shell scripts with modern programming constructs
  • Interactive command-line work with built-in syntax highlighting and completion
  • Cross-platform scripting with a single statically linked binary
  • Data manipulation pipelines that handle structured data (not just text)
  • Automation tasks requiring HTTP requests or JSON parsing directly in the shell
  • Users wanting a shell with functional programming features

Not Ideal For

  • Environments requiring strict POSIX shell compatibility for running legacy scripts
  • Users heavily dependent on a vast ecosystem of Bash or Zsh plugins and community scripts
  • Production systems where stability is critical and breaking changes are unacceptable

Pros & Cons

Pros

Expressive Scripting Language

Offers a functional-first programming language with first-class functions and namespaces, enabling more powerful and maintainable scripts than traditional shells like Bash.

Built-in Interactive Features

Includes native syntax highlighting and intelligent completion without external plugins, simplifying setup and enhancing the command-line experience.

Cross-platform Portability

Distributed as a single statically linked binary for Linux, BSDs, macOS, and Windows with no dependencies, ensuring easy installation and consistency across systems.

Structured Data Pipelines

Supports pipelines that carry structured data, not just text, allowing for robust scripting with built-in JSON parsing and HTTP client capabilities.

Cons

Pre-1.0 Instability

As admitted in the README, breaking changes can occur, which may disrupt existing scripts and workflows in production environments.

Limited Ecosystem

Has a smaller community and fewer third-party tools compared to established shells, making it harder to find plugins or pre-written scripts.

Syntax Learning Curve

Requires learning a new functional-first language and paradigms, which can be a barrier for users accustomed to traditional shell scripting syntax.

Frequently Asked Questions

Quick Stats

Stars6,340
Forks326
Contributors0
Open Issues336
Last commit3 months ago
CreatedSince 2013

Tags

#programming-language#functional-programming#productivity#unix#shell#scripting-language#cross-platform#command-line#go-language#interactive-shell#go

Built With

G
Go

Links & Resources

Website

Included in

Go169.1k
Auto-fetched 17 hours ago

Related Projects

cobracobra

A Commander for modern Go CLI interactions

Stars44,304
Forks3,175
Last commit13 days ago
clicli

A declarative, simple, fast, and fun package for building command line tools in Go

Stars24,175
Forks1,802
Last commit3 days ago
kingpinkingpin

CONTRIBUTIONS ONLY: A Go (golang) command line and flag parser

Stars3,566
Forks280
Last commit16 days ago
DnoteDnote

A simple command line notebook

Stars3,047
Forks123
Last commit18 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub