Go to file
Dmitry Kotik 6e9e9e027c remove panic call from one ExecuteScriptOption
Changed the shape of the ExecuteScriptOption option to return an error,
which allows validation of the Option parameters. This allowed removing
a panic call from one of the options.

Panic calls are common in the standard library. However, Datastar calls
return errors. Mixing panics and error returns in the same construct is
slight code smell. More importantly, the mixing produces a less
intuitive and predictable API.
2025-04-14 20:14:58 +03:00
.github chore: update go modules in go example (#835) 2025-04-12 11:42:35 -06:00
.vscode
build Add star history chart [deploy-site] 2025-04-12 08:01:48 -06:00
bundles Add wildcard support to persist plugin (#807) 2025-03-30 10:58:39 -06:00
examples chore: update go modules in go example (#835) 2025-04-12 11:42:35 -06:00
library Add star history chart [deploy-site] 2025-04-12 08:01:48 -06:00
sdk remove panic call from one ExecuteScriptOption 2025-04-14 20:14:58 +03:00
site Preconnect to youtube [deploy-site] 2025-04-04 17:11:28 -06:00
tools
.gitattributes
.gitignore
BUILDING.md
CHANGELOG.md Add wildcard support to persist plugin (#807) 2025-03-30 10:58:39 -06:00
CONTRIBUTING.md
DOCKER.md Fix go tools (#829) 2025-04-12 08:27:49 -06:00
Dockerfile Fix go tools (#829) 2025-04-12 08:27:49 -06:00
Dockerfile-dev Fix go tools (#829) 2025-04-12 08:27:49 -06:00
LICENSE
Makefile Fix go tools (#829) 2025-04-12 08:27:49 -06:00
README.md Add star history chart [deploy-site] 2025-04-12 08:01:48 -06:00
Taskfile.yml Fix go tools (#829) 2025-04-12 08:27:49 -06:00
VERSION 1.0.0-beta.11 2025-03-29 12:15:41 -06:00
biome.json
fly.toml
go.mod upd (#833) 2025-04-12 08:29:27 -06:00
go.sum upd (#833) 2025-04-12 08:29:27 -06:00

README.md

Version License Stars

Datastar

The hypermedia framework.

Datastar helps you build reactive web applications with the simplicity of server-side rendering and the power of a full-stack SPA framework.

Getting started is as easy as adding a single 14.5 KiB script tag to your HTML.

<script type="module" src="https://cdn.jsdelivr.net/gh/starfederation/datastar@v1.0.0-beta.11/bundles/datastar.js"></script>

Then start adding frontend reactivity using declarative data-* attributes.

<input data-bind-title />
<div data-text="$title.toUpperCase()"></div>
<button data-on-click="@post('/endpoint')">Save</button>

Visit the Datastar Website »

Watch the Videos »

Join the Discord Server »

Getting Started

Read the Getting Started Guide »

Contributing

Read the Contribution Guidelines »

Custom Plugins

You can manually add your own plugins to the core:

<script type="importmap">
{
    "imports": {
      "datastar": "https://cdn.jsdelivr.net/gh/starfederation/datastar@v1.0.0-beta.11/bundles/datastar.js"
    }
}
</script>
<script type="module">
    import { load } from 'datastar'

    load(
        // Look ma, I made a plugin!
    )
</script>

Star History Chart