SatisCorp
GitHub
    Product

    SatisPalette

    A small, client-side command palette for searching pages on a website. Visitors open it with Ctrl+K, search page titles and text, and follow a result.

    ★ 3 stars⑂ 1 forks1 open issuesV0.3.0MITupdated 15 Nov 2026
    Opens with
    Ctrl+K
    Written in
    Plain JavaScript
    Latest file
    widget.js, about 9 KB
    Licence
    MIT
    Use it

    Add it to your site in two minutes.

    This website's own Ctrl+K search follows the same idea. SatisPalette is the small, reusable version you can put on any site.

    Add it to your site

    Copy widget.js, create a search.json file, and add this before the widget script on each page:

    <script>
      window.CommandPaletteConfig = {
        data: "./search.json",
        theme: "light"
      };
    </script>
    <script src="./widget.js"></script>

    theme is "light" or "dark". If you leave out data, the widget looks for /search.json at the site root.

    Build the index

    The index is a JSON list of pages. Each page needs a url, and a title is optional.

    [
      { "title": "Home", "url": "./index.html" },
      { "title": "Documentation", "url": "./docs.html" }
    ]

    At start-up the widget fetches each page and indexes its title and visible text in the browser. Serve your site over HTTP(S) and make sure the pages can be fetched from where the widget runs.

    Using it

    • Ctrl+K opens and closes the palette
    • Type to search page titles and text
    • Up and Down move through the results, Enter opens the highlighted one
    • Escape closes the palette

    Good to know

    • Search is a simple, case-insensitive substring match
    • It shows up to ten results
    • Every indexed page is fetched in the visitor's browser
    • Light and dark themes are built in
    Roadmap

    What comes next.

    Read live from the repository, so it is always the current plan.

    2026 13th november - 31st december

    • ✓Enter opens selected result
    • ✓Navigate results with arrow keys
    • ✓Theme switching
    • Language changing
    • Displaying matching text
    • Allways on button
    Versions

    Release history.

    V0.3.0

    Latest
    • feat: add arrow key navigation to search palette and create CHANGELOG.md
    • @deadeye021 made their first contribution in https://github.com/gtref/SatisPalette/pull/2
    SHA-256 4727d130224e1e19b008d75bfb74a996cf9aaa641ca50d1ad481548e1d6ff134

    V0.2.0

    • This release adds a enter keybind that selects the first option in the searched list.
    SHA-256 7b2314afa8f5aa992b76cc4d51a989ef8da9968dd630e41b207a446360101f5f