Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yakimych/tetris-fable
Basic Tetris game implementation with Fable Elmish
https://github.com/yakimych/tetris-fable
elmish fable fsharp tetris tetris-game
Last synced: 15 days ago
JSON representation
Basic Tetris game implementation with Fable Elmish
- Host: GitHub
- URL: https://github.com/yakimych/tetris-fable
- Owner: Yakimych
- Created: 2020-07-20T18:39:21.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T11:56:53.000Z (almost 2 years ago)
- Last Synced: 2024-07-30T18:21:53.183Z (4 months ago)
- Topics: elmish, fable, fsharp, tetris, tetris-game
- Language: F#
- Homepage: https://fable-tetris.netlify.app/
- Size: 529 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Fable Minimal App
This is a small Fable app project so you can easily get started and add your own code easily in it.
## Requirements
* [dotnet SDK](https://www.microsoft.com/net/download/core) 3.0 or higher
* [node.js](https://nodejs.org) with [npm](https://www.npmjs.com/)
* An F# editor like Visual Studio, Visual Studio Code with [Ionide](http://ionide.io/) or [JetBrains Rider](https://www.jetbrains.com/rider/).## Building and running the app
* Install JS dependencies: `npm install`
* Install F# dependencies: `npm start`
* After the first compilation is finished, in your browser open: http://localhost:8080/Any modification you do to the F# code will be reflected in the web page after saving.
## Project structure
### npm
JS dependencies are declared in `package.json`, while `package-lock.json` is a lock file automatically generated.
### Webpack
[Webpack](https://webpack.js.org) is a JS bundler with extensions, like a static dev server that enables hot reloading on code changes. Fable interacts with Webpack through the `fable-loader`. Configuration for Webpack is defined in the `webpack.config.js` file. Note this sample only includes basic Webpack configuration for development mode, if you want to see a more comprehensive configuration check the [Fable webpack-config-template](https://github.com/fable-compiler/webpack-config-template/blob/master/webpack.config.js).
### F#
The sample only contains two F# files: the project (.fsproj) and a source file (.fs) in the `src` folder.
### Web assets
The `index.html` file and other assets like an icon can be found in the `public` folder.