• Stars
    star
    293
  • Rank 141,748 (Top 3 %)
  • Language
    Go
  • License
    MIT License
  • Created over 2 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Command-line launcher

Sunbeam is a command-line launcher, inspired by fzf, raycast and gum.

It allows you to build interactives UIs from simple scripts.

sunbeam demo gif

Other examples:

Visit the documentation for more information (including installation instructions).

Why sunbeam?

I love TUIs, but I spent way to much time writing them.

I used a lot of application launchers, but all of them had some limitations.

Sunbeam try to address these limitations:

Sunbeam runs on all platforms

Sunbeam is written is distributed as a single binary, so you can run it on any platform. The sunbeam extension system is also designed to be cross-platform.

sunbeam running in alacritty

Sunbeam is language agnostic

Sunbeam communicates with your scripts using JSON, so you can use any language you want. The only requirement is that the script is executable and outputs a JSON object conforming to the Sunbeam JSON Schema on stdout.

sunbeam running in vscode

Any github repository can be used as a command

Sunbeam is designed to be extended. Any github repository containing a sunbeam.json config can be installed using the sunbeam install command. You can also install commands from any url.

Sunbeam supports custom clients

Sunbeam comes with a built-in TUI to interact with your scripts, but you can also use any other client.

Currently the only alternative client is sunbeam-raycast.

raycast integration

Inspirations / Alternatives

Sunbeam wouldn't exist without the work of other people. Here are some projects that inspired sunbeam:

  • raycast: Sunbeam shamelessly copy most of raycast UX. Even the project name is a reference to raycast.
  • fzf: Sunbeam tries to take inspiration from fzf, but it's not a drop-in replacement. Sunbeam is designed to be used as a launcher, not as a fuzzy finder.
  • kit: Kit is another script-focused launcher.
  • gum: Sunbeam is powered by charm libraries, and can be seen as a alternative spin on gum. Gum is invoked by scripts, while sunbeam invokes scripts.
  • slapdash: The sunbeam event loop was inspired by slapdash. Sadly, slapdash doesn't seem to be updated anymore.
  • gh: The sunbeam extension mechanism is a copycat of the gh extension mechanism.

More Repositories

1

tweety

An integrated terminal for your browser
Go
73
star
2

vt

A Companion Cli for val.town
TypeScript
20
star
3

smallweb

Host websites from your internet folders
Go
16
star
4

val-town-vscode

Author vals from the confort of your favourite editor
TypeScript
14
star
5

arc

a companion cli for arc
Go
14
star
6

wails-terminal

wails-terminal
JavaScript
10
star
7

ray

A command line interface for Raycast
Go
8
star
8

val-town-chrome-extension

Add a sidebar to the val.town website
TypeScript
8
star
9

raygen

Script Generator for [Raycast](https://raycast.com/)
Python
7
star
10

smallweb.run

TypeScript
7
star
11

alfred-workflowy

Python
6
star
12

excalidraw-deta

Excalidraw in your Personal Cloud !
TypeScript
5
star
13

deta-space-client

An unofficial client for the Deta Space API.
JavaScript
5
star
14

fetch-favicon

Fetches the favicon for a given domain.
Go
5
star
15

sunbeam-raycast

Sunbeam Adapter for Raycast
TypeScript
5
star
16

ask

Go
5
star
17

deta-drive-cli

A command line companion for Deta Drive
Go
4
star
18

lazy

Lzy - Universal Launcher
TypeScript
4
star
19

vscode-secrets

TypeScript
4
star
20

val-town-local

Edit your vals locally
TypeScript
4
star
21

sunbeam-gui

TypeScript
3
star
22

val-town-mirror

Search all public vals (updated hourly)
TypeScript
3
star
23

smallweb-fly

Run smallweb on fly.io
Shell
2
star
24

awesome-val-town

A curated list of useful applications, tool and libraries for Val Town.
2
star
25

smallweb-template-astro

Astro Template for Smallweb
Astro
2
star
26

code-mirror-web-component

TypeScript
2
star
27

smallweb-template

TypeScript
1
star
28

smallweb-hono

TypeScript
1
star
29

smallweb-vscode

TypeScript
1
star
30

smallbrowser

TypeScript
1
star
31

smallweb-puller

Automatically keep smallweb apps up to date
TypeScript
1
star
32

sunbeam-bitwarden

Search Bitwarden Passwords
Shell
1
star
33

smallweb-excalidraw

TypeScript
1
star
34

dotenv

Run a command with env vars injected from one or more .env files
Go
1
star
35

send-to-workflowy

JavaScript
1
star
36

valtown-openapi

JavaScript
1
star
37

todoist-to-workflowy

Bookmarklet used to convert Todoist tasks to Workflowy nodes
JavaScript
1
star
38

homebrew-tap

Ruby
1
star
39

Marp-Replit-Template

Create slides from Replit using Marp
Nix
1
star
40

smallweb-template-waku

TypeScript
1
star
41

smallweb-astro-template

Astro
1
star
42

deno-embed

TypeScript
1
star
43

smallweb-hono-example

Hono / SSR example using smallweb
TypeScript
1
star
44

sunbeam-github

Browse Github Repositories
Shell
1
star
45

sunbeam-raindrop

Search your raindrop.io bookmarks from the command line.
TypeScript
1
star
46

val-town-playground

TypeScript
1
star
47

val-town-embed

JavaScript
1
star