Giraffe.Htmx
2.0.0-beta1
See the version list below for details.
dotnet add package Giraffe.Htmx --version 2.0.0-beta1
NuGet\Install-Package Giraffe.Htmx -Version 2.0.0-beta1
<PackageReference Include="Giraffe.Htmx" Version="2.0.0-beta1" />
paket add Giraffe.Htmx --version 2.0.0-beta1
#r "nuget: Giraffe.Htmx, 2.0.0-beta1"
// Install Giraffe.Htmx as a Cake Addin #addin nuget:?package=Giraffe.Htmx&version=2.0.0-beta1&prerelease // Install Giraffe.Htmx as a Cake Tool #tool nuget:?package=Giraffe.Htmx&version=2.0.0-beta1&prerelease
Giraffe.Htmx
This package enables server-side support for htmx within Giraffe and ASP.NET's HttpContext
.
htmx version: 2.0.0-beta1
Note that htmx 2.0 is a BETA release. The migration guide does not currently specify any request or response header changes. This means that, as of this release, there are no required code changes in moving to this major version.
Setup
- Install the package (must use
--Prerelease
flag). - Prior to using the request header extension properties or the header-setting
HttpHandler
s,open Giraffe.Htmx
.
Use
To obtain a request header, using the IHeaderDictionary
extension properties:
let myHandler : HttpHander =
fun next ctx ->
match ctx.HxPrompt with
| Some prompt -> ... // do something with the text the user provided
| None -> ... // no text provided
To set a response header:
let myHandler : HttpHander =
fun next ctx ->
// some meaningful work
withHxPushUrl "/some/new/url" >=> [other handlers]
The HxSwap
module has constants to use for the HX-Reswap
header. These may be extended with settle, show, and other qualifiers; see the htmx documentation for the hx-swap
attribute for more information.
Learn
The naming conventions of this library were selected to mirror those provided by htmx. The header properties become Hx*
on the ctx.Request.Headers
object, and the response handlers are withHx*
based on the header being set. The only part that does not line up is withHxTrigger*
and withHxTriggerMany
; the former set work with a single string (to trigger a single event with no arguments), while the latter set supports both arguments and multiple events.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- FSharp.Core (>= 6.0.0)
- Giraffe (>= 6.2.0)
- Giraffe.Htmx.Common (>= 2.0.0-beta1)
-
net7.0
- FSharp.Core (>= 6.0.0)
- Giraffe (>= 6.2.0)
- Giraffe.Htmx.Common (>= 2.0.0-beta1)
-
net8.0
- FSharp.Core (>= 6.0.0)
- Giraffe (>= 6.2.0)
- Giraffe.Htmx.Common (>= 2.0.0-beta1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.0.2 | 212 | 8/13/2024 |
2.0.1 | 67 | 7/29/2024 |
2.0.0 | 380 | 6/18/2024 |
2.0.0-beta4 | 128 | 5/23/2024 |
2.0.0-beta3 | 96 | 4/18/2024 |
2.0.0-beta1 | 99 | 3/19/2024 |
2.0.0-alpha2 | 127 | 2/12/2024 |
2.0.0-alpha1 | 117 | 1/31/2024 |
1.9.12 | 1,170 | 4/18/2024 |
1.9.11 | 1,146 | 3/19/2024 |
1.9.10 | 556 | 1/3/2024 |
1.9.8 | 330 | 11/22/2023 |
1.9.6 | 270 | 9/28/2023 |
1.9.5 | 173 | 8/25/2023 |
1.9.4 | 291 | 7/26/2023 |
1.9.3 | 164 | 7/15/2023 |
1.9.2 | 357 | 5/6/2023 |
1.9.0 | 205 | 4/14/2023 |
1.8.6 | 266 | 3/3/2023 |
1.8.5 | 3,963 | 1/18/2023 |
1.8.4 | 1,558 | 11/24/2022 |
1.8.0 | 2,420 | 7/14/2022 |
1.7.0 | 1,208 | 2/24/2022 |
1.6.1 | 280 | 1/7/2022 |
0.9.3 | 1,461 | 11/26/2021 |
0.9.2 | 314 | 11/11/2021 |
0.9.1 | 314 | 11/8/2021 |
Update script tags to pull htmx 2.0.0-beta1