An interactive 2D binary classification demo using a Multi-Layer Perceptron (MLP) implemented in Rust and compiled to WebAssembly for optimal performance.
- Interactive neural network training visualization
- Custom network architecture configuration
- Real-time decision boundary plotting
- WebAssembly-powered for high performance
- Customizable training masks and parameters
- Frontend: Vue.js 3 with Vite
- Core ML: Rust compiled to WebAssembly
- Plotting: Rust Plotters Library with Canvas Backend
-
Clone the repository
git clone https://github.com/ChooseDews/WASMBrowserMLP.git cd WASMBrowserMLP -
Install dependencies
npm install
-
Build the WebAssembly module
npm run build:wasm
-
Start the development server
npm run dev
The application will be available at http://localhost:5173
npm run buildThis will:
- Compile the Rust code to WebAssembly
- Build the Vue.js application with Vite
The output will be in the dist directory, ready for deployment.
This project is configured to deploy automatically to GitHub Pages using GitHub Actions. When you push to the main branch, the workflow will:
- Build the WebAssembly module and Vue.js application
- Deploy the built files to GitHub Pages
You can also manually trigger the deployment from the Actions tab in your GitHub repository.
/rust_lib/- Rust implementation of the neural network/src/- Vue.js frontend code/public/- Static assets/.github/workflows/- GitHub Actions workflow for deployment
