Gå til innholdet

Veikart

Fristil er før 1.0. Denne siden viser hva som står igjen, og hva som alt er levert av den opprinnelige planen. Endringer en konsument merker, står som før i versjonsloggen, med brytende endringer under «Brytende».

Én kontrakt, skrevet av Fristil. Lukkede typer der språket har dem. Én sjekk overalt ellers. Det du overtar, eier du.

Stavekontrollen, det som leser markupen din og sier fra om klasser som ikke finnes, felt uten ledetekst og id-er som ikke peker på noe, er én kjerne skrevet i Rust og bygget til WebAssembly. Den samme fila kjører i Node, på JVM-en og i hvert språk som har en kjøretid for WebAssembly, og gir det samme svaret overalt.

Alt leveres gjennom kanalene språket ditt allerede bruker: npm og Maven Central, og kildekoden for cargo install. Utvidelsene ligger på editorenes egne markedsplasser, og fristil.jar og fristil.wasm ved hver utgivelse på GitHub. Ingenting krever at du stoler på en tredjeparts pakkekilde, og ingenting du laster ned, krever et sertifikat for å kjøre.

  • Fullføring og forklaring i språkserveren. fristil lsp gir i dag funn og rettelser. Fullføringen og forklaringen kommer fortsatt fra utvidelsen for VS Code og fra web-types.json i JetBrains, og flyttes til serveren, så de andre editorene får det samme.
  • En utvidelse for Zed. Zed starter bare språkservere en Zed-utvidelse har meldt inn.
  • Kommandolinja på crates.io. I dag installeres den med cargo install --git.
  • Stegindikator. En flerstegs søknad trenger å vise hvor brukeren er. Det er aria-current="step" og ren CSS, og det hører sammen med framdriftsstolpen.

Det meste ble gitt ut i 0.32.0, og resten i 0.34.0, på npm og på Maven Central, og i IntelliJ-pluginen 0.3.0:

  • Kontrakten er én fil, manifest.json, skrevet av Fristil fra koden: klassene og elementene, de lovlige verdiene og hva hver byggefunksjon svarer, og fra 0.34.0 hva hver klasse tar som innhold, hvilke deler den består av, og tokenene. Alle verktøyene leser den.
  • Fristil for Kotlin på Maven Central fra 0.33.0, med byggefunksjonene som enum-er, assertFristil(html) i vanlige tester, manifestet med typer, utvidelser for kotlinx.html og CSS-en som WebJar, og fra 0.34.0 temaet som funksjoner og byggefunksjonene i manifestet. Se Kotlin og Java.
  • Én stavekontroll i Rust for fristil sjekk, @fristil/designsystem/diagnostics, VS Code og IntelliJ-pluginen fra 0.3.0, med linje, kolonne, regelnavn og undertrykking med en kommentar. Regelen for en del som står to ganger kom i 0.34.0.
  • Temaene bygges og sjekkes av den samme kjernen, fra npm og fra en Gradle-oppgave, og fra 0.34.0 fra Maven-pakken.
  • Kommandolinja kjører med npx, java -jar fristil.jar, wasmtime og cargo install. fristil overta gir kopien et eget navn, og Gradle-pluginen sjekker maler som en del av bygget. Se Kommandolinjen.
  • Språkserveren, fristil lsp, for VS Code, Neovim og Helix. Se Editoren.
  • Sjekk av den ferdige siden: --css sammenligner stilarkene med kontrakten, og diagnoseRendered(page) og assertFristilRendered sjekker siden slik nettleseren har rendret den.