Fable Elmish Electron Material UI Demo

screenshot of Fable Elmish Electron Material UI Demo
react
scss
material-ui

Complete boilerplate for Electron apps using Fable and Elmish with hot module reloading, time-travel debugging, etc.

Overview:

The Fable-Elmish-Electron-Material-UI demo is an example of an F# Electron app that combines Fable 2 and Elmish. It serves as a guide for using Material-UI, including JSS/style-as-code, and implementing UX patterns in Elmish. The demo can be used as a scaffolding tool for developing Fable/Elmish/Electron apps.

Features:

  • Hot module reloading for both code and styles
  • Time-travel debugging using Redux DevTools, RemoteDev, and Fable.Elmish.Debugger
  • Single-command development and packaging with FAKE
  • Uses electron-webpack for most of the webpack configuration
  • Uses electron-builder to package the app
  • Uses electron-window-state for remembering window state between launches
  • Uses Devtron for Electron-specific debugging and linting

Summary:

The Fable-Elmish-Electron-Material-UI demo showcases an F# Electron app built using Fable 2 and Elmish. It provides examples of how to use Material-UI and implements various UX patterns in Elmish. The demo offers features such as hot module reloading, time-travel debugging, and single-command development and packaging. The installation process involves cloning the repository, restoring CLI tools, and running commands to start the app in live mode. The demo also supports building the app to an unpacked directory or a packed installer. Improvement suggestions are welcome through issue or pull request submissions.

react
React

React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components

scss
SCSS

SCSS is a preprocessor scripting language that extends the capabilities of CSS by adding features such as variables, nesting, and mixins. It allows developers to write more efficient and maintainable CSS code, and helps to streamline the development process by reducing repetition and increasing reusability.

material-ui
Material UI

material-ui adds classes to Tailwind CSS for all common UI components. Classes like btn, card, etc. This allows us to focus on important things instead of making basic elements for every project.

template
Templates & Themes

A template or theme refers to a pre-designed layout or structure that provides a basic framework for building a specific type of application or website. It typically includes good design, placeholder content and functional features, allowing developers to customize and fill in the details according to their specific needs.

webpack
Webpack

Webpack is a popular open-source module bundler for JavaScript applications that bundles and optimizes the code and its dependencies for production-ready deployment. It can also be used to transform other types of assets such as CSS, images, and fonts.