Skip to content
/ Sutil Public
forked from davedawkins/Sutil

Lightweight front-end framework for F# / Fable. No dependencies.

License

Notifications You must be signed in to change notification settings

sajagi/Sutil

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sutil Nuget

Sutil is a web application framework for F#.

Its features are:

  • Simple DOM builder, courtesy of Feliz.Engine
  • No dependencies. Sutil is written entirely in F#, and so does not layer on top of another JS framework, such as React.
  • Reactivity using IObservable and stores. Sutil does not use a virtual DOM.
  • Support for Elmish (Model-View-Update) architecture.

In addition, Sutil inherits all the benefits of both Fable (F# with excellent JS interop) and F# itself.

Sutil was heavily inspired by Svelte, and imports several of its design features, such as stores and component styling. Some parts of Sutil are direct ports from Svelte.

Development

To compile Sutil and build the main Sutil app in watch mode:

npm run start

To run tests:

npm run test

To deploy to https://sutil.dev (you will need to be Dave Dawkins for this to work). This will:

  • build Sutil
  • build documentation
  • install to sutil.dev
npm run deploy:linode

Building the REPL

Manually:

  • ensure that repl/src/Fable.Repl.Lib/Fable.Repl.Lib.fsproj is up-to-date with the list of Sutil file names.
  • review repl/public/samples/samples.json for examples that should be included or removed

Build the REPL and deploy (to sutil.dev if you're Dave Dawkins):

cd ../davedawkins/repl
./sutilbuild.sh
npm run deploy:linode

About

Lightweight front-end framework for F# / Fable. No dependencies.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 72.1%
  • F# 27.6%
  • Other 0.3%