svelte bash .

The embedded terminal
for Svelte.

I engineer premium front-end components. A fully typed, highly customizable, zero-dependency terminal for your interactive CLI tutorials or developer portfolios.

guest@svelte-bash:~
user@host ~ $

Quick Start .

Instantly integrate an interactive shell into your Svelte application with minimal configuration.

App.svelte
<script>
  import { Terminal } from 'svelte-bash';

  const files = {
    'readme.md': '# Hello World'
  };
</script>

<Terminal
    structure={files}
    theme="dark"
    style="height: 300px"
/>

Zero Dependencies

Designed to be as lightweight as possible. It relies solely on Svelte's reactivity, avoiding heavy terminal emulators.

Highly Extensible

Pass custom async functions, create a virtual file system structure, and listen to programmatic events.

Type-Safe

Written entirely in TypeScript. Get full autocompletion for props and command structures right in your IDE.

Built-in Themes .

Svelte Bash ships with four beautifully crafted themes out of the box. You can also pass a custom CSS string to completely override the styling.

Dracula

user@host ~ $

Matrix

user@host ~ $

Dark

user@host ~ $

Light

user@host ~ $

Web-Scale Features .

Full Experience

Nano Editor & Redirection

Redirect outputs to files using >. Edit them visually using the beautifully embedded nano clone.

user@host ~ $
Performance

Bootplay Engine

Simulate rapid boot sequences or server startup logs with the ultra-fast bootplay engine.

user@host ~ $