diff --git a/README.md b/README.md index 21167f1..ab7ddb7 100644 --- a/README.md +++ b/README.md @@ -6,35 +6,72 @@ WebAssembly image analysis, using Rust. -## Description +## 🌐 Live Demo -This project is currently under active development. You can view the latest version [here](https://jkbstepien.github.io/rustoscope/). +You can view the latest deployed version here: +πŸ”— [https://jkbstepien.github.io/rustoscope/](https://jkbstepien.github.io/rustoscope/) -## Getting Started +## πŸ“¦ Getting Started -### Dependencies +### βœ… Prerequisites -* `pnpm` -* `wasm-pack` +Make sure the following tools are installed: -### Installing +- [`pnpm`](https://pnpm.io/) +- [`wasm-pack`](https://rustwasm.github.io/wasm-pack/) -* Clone this repo -* Inside `/client` call `pnpm install` +> πŸ’‘ Additionally, ensure Rust and `cargo` are installed. If not, install them with: +> `curl https://sh.rustup.rs -sSf | sh` +> +> **Note:** We recommend instatllation via [rustup](https://rustup.rs/) instead of using your system package manager, as we encountered issues with the `wasm-pack` package in some distributions. +> We tested the project using `1.86.0` version of Rust, thus we recommend using this version or later. -### Executing program +## πŸ“– Project Structure + +The project is structured as follows: -* Convert code to WebAssembly using `wasm-pack` -``` -# Run inside /api dir -wasm-pack build --target web --out-dir ../client/src/wasm -``` -* How to run the program -``` -pnpm run dev ``` -* For gh-pages deployment +rustoscope/ +β”œβ”€β”€ api/ # Rust backend for WebAssembly +β”œβ”€β”€ client/ # Frontend application +β”œβ”€β”€ .github/ # GitHub Actions workflows +β”œβ”€β”€ .gitignore # Git ignore file +└── README.md # This file ``` + +### πŸ› οΈ Installation + +1. Clone the repository: + + ```bash + git clone https://github.com/your-username/rustoscope.git + ``` + +2. Install frontend dependencies (inside the `client/` directory): + + ```bash + pnpm install + ``` + +### πŸš€ Running the Project + +1. Build WebAssembly from Rust source code (inside the `api/` directory): + + ```bash + wasm-pack build --target web --out-dir ../client/src/wasm + ``` + +2. Start the development server (inside the `client/` directory): + + ```bash + pnpm run dev + ``` + +### 🚒 Deployment (GitHub Pages) + +To deploy the application (inside the `client/` directory): + +```bash pnpm run deploy ``` @@ -43,5 +80,7 @@ pnpm run deploy Contributors: 1. [Jakub StΔ™pieΕ„](https://github.com/jkbstepien) -2. [Kacper Cienkosz]() -3. [Adam Mytnik]() +2. [Kacper Cienkosz](https://github.com/kacienk) +3. [Adam Mytnik](https://github.com/AdamMytnik) + +This project was created as a part of Large Scale Computing course at AGH University of Science and Technology in KrakΓ³w, Poland under the supervision of [PhD. Leszek Grzanka](https://github.com/grzanka).