Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ncave/fable-raytracer
https://github.com/ncave/fable-raytracer
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/ncave/fable-raytracer
- Owner: ncave
- License: mit
- Created: 2022-01-10T05:18:00.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-24T15:23:03.000Z (9 months ago)
- Last Synced: 2024-10-31T21:35:10.280Z (3 months ago)
- Language: F#
- Size: 167 KB
- Stars: 52
- Watchers: 5
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# fable-raytracer
Small ray tracer demo of the F# to Rust language transpiler in Fable 4.x### Online demo:
https://ncave.github.io/fable-raytracer/### Build and run:
- install [.NET](https://dotnet.microsoft.com/en-us/download) and [Node.js](https://nodejs.org/en/)
- install [Rust](https://www.rust-lang.org/tools/install) and [wasm-pack](https://rustwasm.github.io/wasm-pack/installer/)
- run `dotnet tool restore` to get [Fable](https://github.com/fable-compiler/Fable) installed locally
- run one of the performance tests:
- `npm run test-js-node` (F# to JavaScript, running in Node.js)
- `npm run test-wasm-web` (F# to Rust to WebAssembly, in Browser, localhost:8080)
- `npm run test-wasm-node` (F# to Rust to WebAssembly, running in Node.js)
- `npm run test-rust` (F# to Rust, running as native binary)
- `npm run test-rust-target-cpu` (as above, but allow Rust to target your CPU and use newer instructions)
- `npm run test-python` (F# to Python, running as Python)
- `npm run test-dotnet` (F# running on .NET as managed code)
- `npm run test-native` (F# running on .NET as native binary)
- `npm run test-dotnet-wasm` (F# .NET to WebAssembly AOT, running in Node.js)
- (needs `dotnet workload install wasm-tools`, run with admin permissions)