Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
81 changes: 60 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
```

Expand All @@ -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).
Loading