diff --git a/docs/de/contributing.md b/docs/de/contributing.md
index 164e1593..84e5a90e 100644
--- a/docs/de/contributing.md
+++ b/docs/de/contributing.md
@@ -1,36 +1,47 @@
-# VERTRIBUTING
+# Contributing
-## Verbessere die Codebase
+## Code Contributions
-Als Entwickler, der Raspirus's Funktionalität verstärken möchte, sind Ihre Beiträge von unschätzbarem Wert. Bitte halten Sie sich an die folgenden Richtlinien:
+We welcome contributions! Before starting, please:
-- **Überprüfe existierende Probleme:** Bevor du eintauchst, überprüfe existierende Probleme, um Duplikate zu vermeiden. Wenn keine existiert, zögern Sie nicht, eine neue zu öffnen.
+- **Check existing issues** to avoid duplicates.
+- **Follow documentation & coding standards.**
+- **Write tests** when applicable.
-- **Dokumentation ist Schlüssel:** Stellen Sie immer sicher, dass Ihr Code gut dokumentiert ist. Denken Sie daran, Tests anzupassen, um die Code-Integrität zu erhalten.
+🔗 **[Read the Code of Conduct](https://github.com/Raspirus/docs/blob/main/CODE_OF_CONDUCT.md)**
-- [Lies den Verhaltenskodex](https://github.com/Raspirus/docs/blob/main/CODE_OF_CONDUCT.md)
+## Documentation Contributions
-## Die Dokumentation bereichern
+Our documentation is built with [MkDocs](https://www.mkdocs.org/user-guide/installation/) and enhanced with the [Material Theme](https://squidfunk.github.io/mkdocs-material/reference/).
-Die Dokumentation von Raspirus wird mithilfe von Markdown erstellt und von [MkDocs]betrieben (https\://www\.mkdocs.org/user-guide/installation/) und Python. Um zur Dokumentation beizutragen:
+To contribute:
-- **Folge dem Guide:** Um die Dokumentation auf deinem lokalen Rechner zu starten, folge der [guide](https://raspirus.github.io/docs/guides).
-- **Material-Theme:** Unsere Dokumentation verwendet das Material-Theme, das Markdown-Funktionalität erweitert. Entdecke mehr darüber [here](https://squidfunk.github.io/mkdocs-material/reference).
+1. Clone the [documentation repository](https://github.com/Raspirus/docs).
+2. Set up MkDocs locally.
+3. Submit a pull request with your improvements.
-## Antriebsübersetzungen
+## Translation Contributions
-Unsere Dokumentation ist mehrsprachig dank [Crowdin](https://crowdin.com/project/raspirus), einem intuitiven externen Dienst. GUI Übersetzungen werden über JSON-Dateien bearbeitet. Werfen Sie einen Blick auf die [guide](https://raspirus.github.io/docs/guides) für umfassende Einsichten.
+Raspirus is multilingual! We use [Crowdin](https://crowdin.com/project/raspirus) for translations.
-## Kunstwerk und Medien infizieren
+- GUI translations use JSON files.
+- Documentation translations follow the [contribution guide](https://raspirus.github.io/docs/guides).
-Das Repository für Kunstwerke (Logos, Banner, etc.) und Medien (Powerpoints, Artikel, Graphen, etc.) wird separat auf [diesem Projektarchiv](https://github.com/Raspirus/media) gehostet. Fühlen Sie sich frei, unsere visuelle Präsenz zu unterstützen und zu stärken. Beachten Sie, dass das aktuelle Logo und Banner aufgrund fehlender künstlerischer Expertise von AI generiert wurden.
+## Artwork & Media
-## Feedback geben
+We maintain a separate [media repository](https://github.com/Raspirus/media) for:
-Jenseits der oben genannten Beiträge gibt es andere wirkungsvolle Möglichkeiten, sich einzubringen:
+- Logos, banners, and promotional images.
+- PowerPoints, articles, and infographics.
-- **Trete Discord:** Komm mit unserer Community auf dem [Discord Server](https://discord.gg/Vx7fW9PA8B) um wertvolle Feedback und Ideen zu teilen.
-- **Überlege dir Spenden:** Wenn du Wert in Raspirus findest, überlege [donating](https://github.com/sponsors/Raspirus) um laufende Entwicklung zu unterstützen.
-- **Spread the Word:** Eine einfache, aber effektive Möglichkeit, dazu beizutragen, ist das Herunterladen von Raspirus und die Einführung an Freunde.
+Feel free to contribute and improve Raspirus’s visual presence!
-Vielen Dank für Ihr Engagement für Raspirus's Wachstum und Verbesserung. Ihr Engagement ist ein Eckpfeiler unseres Erfolgs.
+## Community & Feedback
+
+Join the discussion and help shape Raspirus:
+
+- 💬 **[Join our Discord](https://discord.gg/Vx7fW9PA8B)**
+- 💰 **[Consider sponsoring Raspirus](https://github.com/sponsors/Raspirus)**
+- 🌍 **Spread the word!**
+
+Thank you for your support and contributions! 🚀
\ No newline at end of file
diff --git a/docs/de/developers.md b/docs/de/developers.md
index 63a8dae7..dfc09fe5 100644
--- a/docs/de/developers.md
+++ b/docs/de/developers.md
@@ -1,117 +1,135 @@
-# DEVELOPER
-
-## Navigation durch die Architektur
-
-```mermaid
-graph LR
- A[Start] --> B{Scan-Position angegeben? ;
- B --> |Ja| C[Start scan];
- C --> |Start Loop| D[Datei gefunden];
- D --> E[Erstelle Hash];
- E --> F[Vergleiche Hash];
- F --> G{Hash in DB? ;
- G --> |Ja| H[Flagge als Malware];
- G --> |Nein| I[Flagge als Safe];
- H & I --> J[Iteration fortsetzen];
- J --> K{Letzte Datei? ;
- K --> |Ja| L[Scanner stoppen];
- L --> M[Ergebnisse anzeigen];
- K --> | N[No| Erneut starten];
- N --> D;
- B --> |Nein | O[Stop]
-```
+# Developers
+
+Welcome to the Raspirus developer guide! This page outlines everything you need to contribute effectively, from setting up your environment to understanding the architecture and updating YARA rules.
+
+---
+
+## Setup
+
+To begin development, follow these steps:
+
+1. Clone the repository:
+ ```sh
+ git clone https://github.com/Raspirus/raspirus.git
+ cd raspirus
+ ```
+2. Install [Rust](https://www.rust-lang.org/tools/install).
+3. Install the Raspirus package:
+ ```sh
+ cargo install .
+ ```
+4. Start development:
+ ```sh
+ cargo run
+ ```
+5. Or build Raspirus:
+ ```sh
+ cargo build
+ ```
+
+### Troubleshooting Setup Issues
+If you encounter issues while building or running Raspirus:
+
+- Ensure Rust is installed correctly.
+- Verify that logs and config files are created properly.
+- Check for dependency conflicts and missing packages.
+
+---
+
+## Documentation
+
+Since Raspirus is written in Rust, you can generate developer documentation with:
+```sh
+cargo doc --no-deps --open
+```
+This will open the generated documentation in your browser.
+
+---
+
+## Architecture
+
+Raspirus follows a **frontend-backend** architecture, with both components written in Rust.
-Raspirus gliedert sich in zwei integrale Komponenten: Frontend und Backend. Diese Komponenten, die in unterschiedlichen Sprachen und Frameworks erstellt wurden, sind über ein Drittanbieter-Framework mit dem Namen [Tauri](https://tauri.app/) miteinander verbunden. Dieser Rahmen erleichtert nicht nur die Kommunikation zwischen Frontend und Backend, sondern ermöglicht auch die Integration von Rust in das Frontend. Darüber hinaus ermöglicht Tauri die Verteilung von Raspirus auf verschiedene Betriebssysteme.
-
-## Starte deine Entwicklerreise
-
-\=== "Windows" Kopiere das Repository
-2\. Installiere [Tauri and Prerequisites](https://tauri.app/v1/guides/getting-started/prevquisites#setting-up-windows)
-3\. Installieren Sie [npm](https://nodejs.org/en/download)
-4\. 1. Clone the repository
-2\. Install [Tauri and Prerequisites](https://tauri.app/v1/guides/getting-started/prerequisites/#setting-up-macos)
-3\. Install [npm](https://nodejs.org/en/download)
-4\. Install [Next.js](https://nextjs.org/docs/getting-started/installation#manual-installation) with `npm install next@latest react@latest react-dom@latest`
-5\. Install npm dependencies with: `npm i`
-6\. Start development with `cargo tauri dev`
-7\. or build Raspirus with `cargo tauri build` Installiere npm Abhängigkeiten mit: `npm i`
-6\. Beginnen Sie die Entwicklung mit `cargo tauri dev`
-7\. oder bauen Sie Raspirus mit "cargo tauri build"
-
-\=== "Linux" Klone das Repository
-2\. Führe `make install`
-3 aus. 1. Clone the Repository
-2\. Execute `make install`
-3\. Run the application with `raspirus`
-
-\=== "macOS" Kopiere das Repository
-2\. Installiere [Tauri and Prerequisites](https://tauri.app/v1/guides/getting-started/prerequisites/#setting-up-macos)
-3\. Installieren Sie [npm](https://nodejs.org/en/download)
-4\. 1. Clone the repository
-2\. Install [Tauri and Prerequisites](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows)
-3\. Install [npm](https://nodejs.org/en/download)
-4\. Install [Next.js](https://nextjs.org/docs/getting-started/installation#manual-installation) with `npm install next@latest react@latest react-dom@latest`
-5\. Install npm dependencies with: `npm i`
-6\. Start development with `cargo tauri dev`
-7\. or build Raspirus with `cargo tauri build` Installiere npm Abhängigkeiten mit: `npm i`
-6\. Beginnen Sie die Entwicklung mit `cargo tauri dev`
-7\. oder bauen Sie Raspirus mit "cargo tauri build"
-
-Sollten Sie während Ihres ersten Laufs oder Builds auf irgendwelche Fehler stoßen, stellen Sie sicher, dass Sie jeden Schritt gewissenhaft verfolgt haben. Bestätigen Sie die genaue Erstellung von Logs und Konfigurationsdateien.
-
-## Erforsche das Backend
-
-```mermaid
-classDiagram
- Main <|-- DBOps
- Main <|-- Configs
- Main <|-- FileLogs
- Main <|-- Scanner
- Main: +Config config_file
-
- class DBOps {
- +Connection db_conn
- +String db_file
- +TauriWindow t_win
- +new()
- +update_db()
- +hash_exists()
- }
-
- class Configs {
- +Data data
- +new()
- +save()
- +load()
- }
-
- class FileLogs {
- +File file
- +log()
- +create_file()
- }
-
- class Scanner {
- +String scan_loc
- +DbOps db_ops
- +Vec malware_list
- +search_files()
- +create_hash()
- +get_folder_size()
- }
+### Frontend
+
+- Uses **iced-rs** for GUI rendering.
+- Prioritizes user experience—ideally, users should never need to open the settings page.
+- Designed for **touch support**, minimizing keyboard input.
+- Plug-and-play: Can be replaced with another frontend if needed.
+- Simple structure, similar to a website with just a few pages.
+
+### Backend
+
+- **Multi-threaded** for efficient scanning.
+- Handles scanning, rule processing, and settings management.
+- Implements **YARA rules** for malware detection.
+- Well-documented functions—if in doubt, check the code directly.
+- Despite its complexity, it becomes easier to navigate once you start working with it.
+
+---
+
+## Configuration
+
+The configuration file is stored in the default system configuration folder:
+
+```json
+{
+ "config_version": "6",
+ "rules_version": "v1.1.2",
+ "min_matches": 0,
+ "max_matches": 20,
+ "max_threads": 12,
+ "logging_is_active": true,
+ "mirror": "https://api.github.com/repos/Raspirus/yara-rules/releases/latest",
+ "language": "en",
+ "dark_mode": true
+}
```
-Das Backend, ein essentielles Rad in der Raspirus-Maschine, wird in Rust sorgfältig für eine herausragende Leistung hergestellt. Die primäre Datei enthält Funktionen, die über das Frontend zugänglich sind, was JSON-kompatible Ergebnisse liefern muss. Für eine detaillierte Aufschlüsselung siehe die obige Darstellung der modularen Anordnung des Backends.
+### Key Fields
+
+- `config_version`: Determines if an older config needs to be overwritten.
+- `rules_version`: Tracks the last downloaded YARA rules version.
+- `min_matches`: Minimum number of rule matches required to flag a file.
+- `max_matches`: Maximum rule matches before stopping further checks.
+- `max_threads`: Number of CPU threads used for scanning.
+- `logging_is_active`: Enables/disables logging (useful when storage is limited).
+- `mirror`: API endpoint for fetching rule updates.
+- `language`: Current language (supports `fr`, `en`, `it`, `de`).
+- `dark_mode`: Toggles the application’s dark mode.
+
+---
+
+## Mirrors
+
+The `mirror` setting in the config file should point to a Git API. Custom mirrors must provide JSON with the following structure:
+
+```json
+{
+ "tag_name": "v1.1",
+ "zipball_url": "http://example.com/download.zip"
+}
+```
+
+- `tag_name`: Specifies the version for update checks.
+- `zipball_url`: Direct link to the `.zip` archive containing YARA rules.
+
+---
-## Frontend entpacken
+## Updater
-
+Raspirus has a **built-from-scratch updater** that:
-Unsere Frontend, die mit JavaScript über das Next.js Framework entwickelt wurde, betont Benutzerfreundlichkeit und Funktionalität. Er enthält Komponenten und Seiten und spiegelt die Einfachheit und Robustheit von Next.js wider. Eine ungefähre visuelle Darstellung der Frontend-Architektur finden Sie im obigen Bild.
+1. Checks the latest available version using the configured mirror.
+2. Downloads the `.zip` archive to cache.
+3. Compiles all `.yar` files into a `.yarac` (compiled YARA rules).
+4. Saves the compiled rules in:
+ - **Linux/macOS**: `~/.local/share/raspirus`
+ - **Windows**: `%appdata%\Roaming\Raspirus\Data`
+ - **macOS (App Bundle)**: `/Applications/Raspirus/data`
-## Testabdeckung auswerten
+### Release Archive Structure
-- Backend-Tests, die in Rust erstellt wurden, können über den Befehl "cargo test" ausgeführt werden. Greifen Sie auf diese Tests im [test-Verzeichnis](https://github.com/Raspirus/Raspirus/tree/main/src-tauri%2Fsrc%2Ftests). Prüfen Sie die Testabdeckung auf [Codecov](https://app.codecov.io/gh/Raspirus/Raspirus).
-- Die mit Selenium erstellten Frontend-Tests befinden sich derzeit in der Entwicklung.
+The update `.zip` should contain **uncompiled YARA `.yar` files**. The folder structure inside the archive does not matter, as files are added recursively.
-Vielen Dank für Ihr Interesse, zur Entwicklung von Raspirus beizutragen. Ihre Expertise stärkt unseren Fortschritt.
+📌 **Windows Users:** If Windows Defender interferes with compiled YARA rules, an optional script can disable Defender scanning. See [this script](https://github.com/Raspirus/yara-rules/blob/main/scripts/windows.ps1).
diff --git a/docs/de/faq.md b/docs/de/faq.md
index be8e6587..b28add4e 100644
--- a/docs/de/faq.md
+++ b/docs/de/faq.md
@@ -1,33 +1,99 @@
+# FAQ
+
+Below are some frequently asked questions about Raspirus. Click on any question to expand the answer.
+
+## General
+
+??? question "Where does the Raspirus logo come from?"
+ The Raspirus logo features a red monster named **Stuart**, designed to represent a virus-eating creature. The logo was generated using [DALL-E](https://openai.com/product/dall-e-2), with additional image editing and merging.
+
+ Stuart is a friendly monster—except when he's hungry for viruses. You can find additional media and assets in the [dedicated repository](https://github.com/Raspirus/media). Feel free to use these images for your own artwork and share them in the [discussion boards](https://github.com/orgs/Raspirus/discussions).
+
+??? question "Can I use Raspirus offline?"
+ Yes! Raspirus works offline except for updates. The YARA rules database is built locally, and an internet connection is only needed when fetching the latest rules from our GitHub repository.
+
+## Installation & Compatibility
+
+??? question "What are the minimum system requirements?"
+ Raspirus is lightweight and works on most systems, including low-power devices like the Raspberry Pi 3B+. However, for the best experience, we recommend:
+
+ - **RAM:** ~1 GB
+ - **Storage:** ~200 MB
+ - **CPU:** Dual-core processor (higher performance results in faster scans)
+ - **Display:** Required for the GUI (no strict minimum size, but smaller screens may impact usability)
+
+??? question "Issue when installing Raspirus on Linux"
+ **Do not install or perform actions as the `sudo` user.** Always run commands as your main user and use `sudo` only when necessary.
+
+ Switching to the `sudo` user and performing the installation will **break** the setup.
+
+??? question "Why can't I select directories or files?"
+ To change the type of asset you want to scan, click the **orange icon** near the selection dropdown. You can choose between:
+
+ - **USB drives**
+ - **Folders**
+ - **Individual files**
+
+??? question "Which operating systems and architectures are supported?"
+ Raspirus supports multiple operating systems and CPU architectures:
+
+ - **Windows:** Windows 10 & 11 (x86_64)
+ - **Linux:** Debian-based distributions (Debian, Ubuntu, PopOS, Mint, etc.) (x86_64, ARM64)
+ - **macOS:** Intel & Apple Silicon (x86_64, aarch64)
+
+ Additionally, Raspirus is **unofficially supported** on:
+
+ - OpenSUSE (x86_64, ARM64)
+ - Arch-based Linux distributions (x86_64, ARM64)
+
+ **Experimental support:** RISC-V 64 on Linux.
+
+## Customization
+
+??? question "How do I add my own YARA rules?"
+ Raspirus fetches rules from the [yara-rules repository](https://github.com/Raspirus/yara-rules) and builds the database locally.
+
+ If you want to contribute new rules:
+ - Open an **issue** or submit a **pull request (PR)** on the [yara-rules repository](https://github.com/Raspirus/yara-rules).
+
+ If you prefer to use your own rules:
+ - Modify the configuration file to fetch rules from your own repository instead.
+
---
-comments: true
----
-# FAQ
+## Known Issues
+
+??? warning "Remote installation error: App not detecting a screen"
+ If you install Raspirus via remote access, you may see an error indicating the app **is not detecting a screen**.
+
+ This happens because the system doesn't register a screen when running the app from the CLI, even if one is physically connected.
-???+ question "App crashes when updating" On Windows, it has been observed that the app crashes when attempting to update the database. Wir sind uns dieser Frage bewusst und arbeiten aktiv daran, sie zu lösen. Das Problem tritt auf, weil die Update-Funktion Administratorrechte benötigt, die Windows nicht automatisch zur Verfügung stellt. Um dieses Problem vorübergehend zu beheben, können Sie die App mit Administratorrechten ausführen. Klicken Sie mit der rechten Maustaste auf die App und wählen Sie "Als Administrator ausführen", um sie mit den nötigen Rechten zu starten.
+??? warning "Dependency issues when installing Raspirus"
+ If you encounter dependency issues:
+ - Try using the **AppImage** version.
+ - If issues persist, consider **downgrading or upgrading your OS**.
+
+ Always report these issues on [Discord](https://discord.gg/raspirus) or [GitHub](https://github.com/Raspirus/raspirus/issues) so we can investigate further.
+
+---
-???+ Frage "Woher kommt das Raspirus-Logo?"
-Das Logo der Raspirus App enthält ein rotes Monster namens Stuart, das eine virusfressende Kreatur darstellen soll. Das Logo wurde mit [DALL-E](https://openai.com/product/dall-e-2) zusammen mit kreativer Bildbearbeitung und Zusammenführung generiert. Stuart ist ein freundliches Monster, außer wenn er hungrig nach Viren ist. Du kannst zusätzliche Medien und Dokumente im [dedizierten Projektarchiv](https://github.com/Raspirus/media) finden. Du kannst diese Bilder verwenden, um dein eigenes Kunstwerk zu erstellen und sie in den [Diskussionsforen“ zu teilen](https://github.com/orgs/Raspirus/discussions).
+## Important GitHub Issues to Check
-??+ Frage "Mein VScode Setup gibt mir Probleme"
+Before reporting a problem, please check the following commonly referenced issues:
-````
-Das Rust Analyzer Plugin in Visual Studio Code sucht nach einer `Cargo.toml` Datei im aktuellen Verzeichnis oder seinem übergeordneten Verzeichnis. Um dieses Problem zu beheben, können Sie eine Option zu den Plugin-Einstellungen hinzufügen und den Standort Ihrer `Cargo` angeben. oml` Datei.
+??? note "Commonly Reported Issues"
+ - **[#852 - No armv7 (32-bit) support](https://github.com/Raspirus/raspirus/issues/852)**
+ - **[#891 - Missing fonts](https://github.com/Raspirus/raspirus/issues/891)**
+ - **[#902 - "Failed to open yar file" error](https://github.com/Raspirus/raspirus/issues/902)**
+ - **[#937 - ARM64 deb does not install on RaspiOS (Debian 12 Bookworm)](https://github.com/Raspirus/raspirus/issues/937)**
-Wie in [diesem Kommentar](https://github. om/rust-lang/rust-analyzer/issues/2649#issuecomment-691582605), können Sie die folgenden Zeilen am Ende Ihrer Plugin-Einstellungen JSON hinzufügen. Anschließend starten Sie den Rust Analyzer neu, damit die Änderungen wirksam werden.
+This is not a complete list—just a selection of frequently reported issues. If you encounter an error, check the [GitHub issues](https://github.com/Raspirus/raspirus/issues) first to see if a solution already exists before requesting support.
-```json
-{
- "rust-analyzer. inkedProjects": [
- "/home/stuart/raspirus/raspirus/Cargo.toml"
- ]
-}
-```
-````
+## Contributing Fixes
-???+ question "Can't select directories/files" Unfortunately, as of [this issue](https://github.com/tauri-apps/tauri/issues/5405) with Tauri, we currently can't allow users to select both files and folders. Um zwischen der Auswahl einer einzelnen Datei oder eines einzelnen Ordners zu wechseln, müssen Sie diese in den Raspirus Einstellungen ändern. Dort finden Sie einen Schalter dafür.
+We are happy to assist when possible, but our time is limited. If you find a solution to a problem, consider sharing it:
-??+ Frage "Was ist verschleierter Modus?"
-Raspirus war ursprünglich für den Unternehmenseinsatz gedacht und musste daher privatfreundlich sein. Um dies zu gewährleisten, fügte es den "Obfuscation Mode" hinzu, der alles versteckt, Malware schneller erkennt und nur anzeigt: "Malware gefunden" oder "Keine Malware gefunden". Sie ist standardmäßig eingeschaltet, wenn Sie also etwas mehr über Ihren Scan wissen möchten, sollten Sie ihn wahrscheinlich deaktivieren. Sie können dies in den Einstellungen tun.
+- If an **existing issue** covers your problem, add a comment with your fix.
+- If you discover a **new issue** and a workaround, open an issue and document the solution for others.
-???+ question "error: found a virtual manifest instead of a package manifest" If you get this error when performing `cargo install` or using the Makefile, please note that it's a [know issue](https://github.com/rust-lang/cargo/issues/7599). Die Lösung ist einfach, wie auf der [this]erklärt (https\://stackoverflow. om/a/76271890) Stackoverflow-Antwort, ändere einfach den Befehl um den Arbeitsbereich einzubinden, wie z.B.: `cargo install --path src-tauri/`
+Your contributions help improve Raspirus for everyone! 🚀
diff --git a/docs/de/guides.md b/docs/de/guides.md
deleted file mode 100644
index 57114079..00000000
--- a/docs/de/guides.md
+++ /dev/null
@@ -1,88 +0,0 @@
-# GUIDES
-
-## Lokale Dokumentation einrichten
-
-Richten Sie einfach die Dokumentation auf Ihrem Rechner mit diesen einfachen Schritten ein:
-
-1. Clone this repository by following the instructions on [GitHub](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository).
-
- ```bash
- git clone https://github.com/Raspirus/docs.git
- ```
-
-2. Navigate to the cloned directory and install the required dependencies.
-
- ```bash
- You can install the dependencies by running the following command: `pip install -r requirements.txt`.
- ```
-
-3. Starte das Projekt lokal:
- Beginne dein lokales Projekt, indem du diesen Befehl ausführst:
-
- ```bash
- mkdocs dienen
- ```
-
- Dies wird einen Entwicklungsserver initiieren, der dir erlaubt, die Dokumentation über [http://localhost:8000](http://localhost:8000) in deinem bevorzugten Webbrowser zuzugreifen.
-
-## Export to PDF
-
-If you would like to have an offline version of this documentation in PDF format, you can follow these step-by-step instructions:
-
-1. Folgen Sie den oben beschriebenen Installationsprozess.
-
-2. Install [mkdocs](https://www.mkdocs.org/user-guide/installation/) and execute the build command: `mkdocs build`.
-
-3. If everything goes smoothly, the resulting PDF file should be located in the `site/pdf` directory with the name `document.pdf`.
-
-Please be aware that the exported PDF may have some issues with images and iFrames, but the text should be readable and suitable for sharing offline. Dennoch bleibt der Text lesbar und für die Offline-Freigabe geeignet.
-
-## Übersetzungen
-
-Für Übersetzungen dieser Dokumentation besuchen Sie bitte [Crowdin](https://crowdin.com/project/raspirus), eine gemeinschaftliche Plattform. Übersetzungen für UI-Zeichenketten werden über JSON-Dateien verwaltet. Erstelle deine Übersetzungen im [locales Ordner](https://github.com/Raspirus/Raspirus/tree/main/public%2Flocales). Behalte die Einzigartigkeit der Schlüssel bei der Übersetzung aus der `en.json` Datei.
-
-## Scanner-Einblicke
-
-### Scanne komprimierte Dateien
-
-!!! notiz
-
-```
-Diese Option ist für die Raspberry Pi noch nicht verfügbar. Schau, warum in der [FAQ Sektion](https://raspirus.github.io/docs/faq)
-```
-
-Während Raspirus standardmäßig Ordner scannt, können Sie dieses Verhalten über die Einstellungsseite ändern. Durch Umschalten können Sie einzelne Dateien, einschließlich komprimierter Dateien, scannen. Es ist wichtig zu beachten, dass nur eine Datei gleichzeitig gescannt werden kann.
-
-### Protokolle und Konfigurationen navigieren
-
-Bei unerwarteten Vorfällen oder plötzlichen Abstürzen der App kann die Prüfung von Logs und Konfigurationen Einblicke bieten. Suchen Sie diese Dateien in den folgenden Ordnern, basierend auf Ihrem Betriebssystem. Das [ProjectDirs crate](https://docs.rs/directories-next/latest/directories_next/struct.ProjectDirs.html) speichert diese an der folgenden Stelle:
-
-**Konfigurationsdatei:**
-
-| Plattform | Wert | Beispiel |
-| --------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------- |
-| Linux | `$XDG_DATA_HOME`/`_project_path_` oder `$HOME`/.local/share/`_project_path_` | /home/alice/.local/share/barapp |
-| macOS | `$HOME`/Library/Application Support/`_project_path_` | /Benutzer/Alice/Library/Application Support/com.Foo-Corp.Bar-App |
-| Fenster | `{FOLDERID_RoamingAppData}`\\`_project_path_`\data | C:\Benutzer\Alice\AppData\Roaming\Foo Corp\Bar App\data |
-
-**Logdateien:**
-
-| Plattform | Wert | Beispiel |
-| --------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------- |
-| Linux | `$XDG_DATA_HOME`/`_project_path_` oder `$HOME`/.local/share/`_project_path_` | /home/alice/.local/share/barapp |
-| macOS | `$HOME`/Library/Application Support/`_project_path_` | /Benutzer/Alice/Library/Application Support/com.Foo-Corp.Bar-App |
-| Fenster | `{FOLDERID_LocalAppData}`\\`_project_path_`\data | C:\Benutzer\Alice\AppData\Local\Foo Corp\Bar App\data |
-
-Stellen Sie sicher, dass Sie diese Dateien beim Melden von Fehlern einfügen, da sie bei der Fehlerbehebung sehr hilfreich sind.
-
-## GitHub Integration
-
-### Die Anreicherung der Signaturdatenbank
-
-KOMMEN SOON
-
-## Raspberry Pi Einsatz
-
-Ursprünglich für den eigenständigen Einsatz von Raspberry Pi mit Touchscreen-Funktionalität (ähnlich dem Kiosk Modus) konzipiert, war dieses Projekt in erster Linie das Scannen angehängter USB-Laufwerke. Während der Umfang des Projekts erweitert wurde, bleibt diese Funktion intakt. Folge der [Anleitung auf Tauri](https://tauri.app/v1/guides/building/linux#manual-compilation) und wenn du Probleme damit hast, lass es uns wissen.
-
-Vielen Dank, dass Sie Raspirus als Ihre Malware-Schutzlösung gewählt haben. Diese umfassenden Führer sorgen dafür, dass Ihre Erfahrung nahtlos und effizient ist.
diff --git a/docs/de/index.md b/docs/de/index.md
index 3bd575a0..a194aaf1 100644
--- a/docs/de/index.md
+++ b/docs/de/index.md
@@ -1,46 +1,80 @@
-# HOME
+# Home
-![Volle Banner Logo](../img/banner_logo.png)
+
+
+
+
-## Einführung
+## Introduction
-Raspirus: Verbessern Sie Ihren Malware-Schutz
+Raspirus is a lightweight, rules-based malware scanner designed for scanning files and directories. Originally developed to scan USB drives using a Raspberry Pi, it has since expanded to support local file and folder scanning on multiple platforms.
-Willkommen in der offiziellen Dokumentation zu Raspirus, Ihrem leichten Signaturenscanner. Ursprünglich entwickelt, um angeschlossene USB-Laufwerke mit einem Raspberry Pi zu scannen Raspirus hat sich zu einem vielseitigen Tool entwickelt, das auch lokale Dateien und Ordner scannt. Einige der herausragenden Funktionen beinhalten:
+Raspirus utilizes YARA-based detection rules to identify potential threats, offering a flexible and privacy-conscious approach to malware scanning. It supports scanning compressed files, ensuring thorough analysis. The project is community-supported and operates without cost, relying on donations.
-- **Kostenloser Schutz:** Raspirus arbeitet ausschließlich auf Spenden und sichert so erstklassigen Schutz ohne finanzielle Belastung.
-- **Maßgeschneiderte Signaturerkennung:** Unser individueller Signatur-basierter Ansatz garantiert eine genaue Identifizierung von Malware.
-- **Umfassende Datei-Scans:** Raspirus kann komprimierte Dateien effizient scannen, um sicherzustellen, dass keine Bedrohung unerkannt bleibt.
-- **Datenschutz Priorisiert:** Raspirus bietet eine datenschutzfreundliche Option, schützt Ihre persönlichen Daten.
-- **Cross-Platform Convenience:** Genießen Sie die Vorteile von Raspirus Schutz auf einer Vielzahl von Betriebssystemen.
-- **Swift and Dependable:** Zählt auf Raspirus für schnelle und zuverlässige Malware-Erkennung.
-- **Sleek Modern Interface:** Mit Benutzerfreundlichkeit im Kern verfügt Raspirus über eine schöne und intuitive Benutzeroberfläche.
+Designed for efficiency and ease of use, Raspirus provides a modern interface while maintaining fast and reliable scanning performance.
-## Erste Schritte
+## Getting Started
-### Für reguläre Benutzer
+### For Regular Users
-Mit Raspirus zu beginnen ist ein Kinderspiel. Folgen Sie diesen einfachen Schritten:
+Getting started with Raspirus is a breeze. Follow these simple steps:
-1. Besuche unsere [website](https://raspirus.deno.dev) oder gehe auf die [GitHub Release Seite](https://github.com/Raspirus/Raspirus/releases/latest).
-2. Laden Sie die ausführbare Datei herunter, die zu Ihrem Betriebssystem passt.
+1. Visit our [website](https://raspirus.deno.dev) or head to the [GitHub release page](https://github.com/Raspirus/raspirus/releases/latest).
+2. Download the executable that matches your operating system.
-!!! notiz
+**Alterantives:**
-```
-Wenn du Raspirus auf der Raspberry Pi als eigenständige Anwendung verwenden möchtest, haben wir dafür einen [dedizierten Anleitung](https://raspirus.github.io/docs/guides#Raspberry-Pi).
-```
+- [Snap Store (Linux)](https://snapcraft.io/raspirus/)
+- [Flathub (Linux)](https://flathub.org/apps/details/io.github.raspirus.raspirus)
+- [SourceForge](https://sourceforge.net/projects/raspirus/files/latest/download)
+- [Chocolatey (Windows)](https://community.chocolatey.org/packages/raspirus/)
-### Für Entwickler
-Sind Sie ein Entwickler, der Raspirus aufbauen will? Wir haben dich bedeckt. Schaue dir unsere umfassenden Anleitungen für verschiedene Betriebssysteme in der [Entwicklersektion](https://raspirus.github.io/docs/developers) an.
+### For Developers
-## Fragen?
+Are you a developer looking to set up Raspirus? We've got you covered. Check out our comprehensive guides for various operating systems in the [Developers section](developers.md).
-Haben Sie Fragen zu Raspirus? Wir sind hier, um zu helfen!
+## Questions?
-- Besuchen Sie unsere [FAQ Sektion](https://raspirus.github.io/docs/faq) für Antworten auf häufige Anfragen.
-- Trete unserer gedeihenden Community auf dem [Discord Server](https://discord.gg/Vx7fW9PA8B) bei, um sich mit anderen Nutzern zu beschäftigen.
-- Wenn Sie einen Fehler gefunden haben, durchsuchen Sie die GitHub Probleme, um zu sehen, ob er bereits gemeldet ist.
+Got questions about Raspirus? We're here to help!
-Vielen Dank, dass Sie sich für Raspirus für Ihren Malware-Schutz entschieden haben. Gemeinsam machen wir die digitale Welt für alle sicherer.
+- Visit our [FAQ section](faq.md) for answers to common queries.
+- Join our thriving community on the [Discord server](https://discord.gg/Vx7fW9PA8B) to engage with fellow users.
+- If you've encountered a bug, browse the [GitHub issues](https://github.com/Raspirus/raspirus/issues) to see if it's already reported.
+
+Thank you for choosing Raspirus for your malware protection needs. Together, we're making the digital world safer for everyone.
+
+## Screenshots
+
+### Home page
+
+
+
+
+
+### Settings page
+
+
+
+
+
+
+### About page
+
+
+
+
+
+
+## Contact
+
+We'd love to hear from you! Depending on your needs, here are the best ways to get in touch:
+
+- Join our [Discord community](https://discord.gg/Vx7fW9PA8B) for general questions and discussions.
+- For private matters, feel free to [email us](mailto:raspirus.dev@gmail.com).
+- If you have bug reports, feature requests, or other code-related issues, please use our [GitHub Issues](https://github.com/Raspirus/raspirus) system or the dedicated channels on our Discord server.
+
+### Quick Links
+- :simple-discord: [Discord](https://discord.gg/Vx7fW9PA8B)
+- :simple-gmail: [Email](mailto:raspirus.dev@gmail.com)
+- :simple-github: [GitHub](https://github.com/Raspirus/raspirus)
\ No newline at end of file
diff --git a/docs/en/Scanning/index.md b/docs/de/scanning.md
similarity index 100%
rename from docs/en/Scanning/index.md
rename to docs/de/scanning.md
diff --git a/docs/de/screenshots.md b/docs/de/screenshots.md
deleted file mode 100644
index 04e78b87..00000000
--- a/docs/de/screenshots.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# SCREENSHOTS
-
-## Zuhause
-
-![Screenshot der Homepage](../img/screenshots/home.png)
-
-## Scannen
-
-![Screenshot des Scanprozess](../img/screenshots/scanning.png)
-
-## Ergebnis
-
-![Screenshot mit positivem Ergebnis](../img/screenshots/result.png)
-
-## Raspberry Pi Setup
-
-![Screenshot der Startseite auf Raspberry Pi](../img/screenshots/Rpihomesetup.jpg)
-
-![Screenshot von Raspberry Pi Setup](../img/screenshots/Rpisetup.jpg)
diff --git a/docs/de/stars.md b/docs/de/stars.md
deleted file mode 100644
index f60f13a8..00000000
--- a/docs/de/stars.md
+++ /dev/null
@@ -1,88 +0,0 @@
-# STARS
-
-## Sponsoren
-
-
-
-
diff --git a/docs/de/usage.md b/docs/de/usage.md
new file mode 100644
index 00000000..3c24087f
--- /dev/null
+++ b/docs/de/usage.md
@@ -0,0 +1,78 @@
+# Usage Guide
+
+Raspirus is designed to offer a straightforward and user-friendly experience. It eliminates the need for a keyboard or mouse by providing a fully touchscreen-based interface. The application has been developed with simplicity in mind, ensuring that navigating and using Raspirus is intuitive. In this section, we will explain the available settings and scanning functionalities in more detail.
+
+## Navigating Logs and Configurations
+
+In cases of unexpected errors or application crashes, reviewing logs and configuration files can provide valuable insights. These files are stored in platform-specific directories, managed by the [ProjectDirs crate](https://docs.rs/directories-next/latest/directories_next/struct.ProjectDirs.html).
+
+### Log File Location
+
+The log files are stored in different locations depending on the operating system. Below is a table of default paths:
+
+| Platform | Path | Example |
+| -------- | -------------------------------------------------------------------- | ------------------------------------------------------------- |
+| Linux | `$XDG_DATA_HOME`/`_project_path_` or `$HOME`/.local/share/`_project_path_` | `/home/alice/.local/share/barapp` |
+| macOS | `$HOME`/Library/Application Support/`_project_path_` | `/Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App` |
+| Windows | `{FOLDERID_LocalAppData}`\\`_project_path_`\\data | `C:\Users\Alice\AppData\Local\Foo Corp\Bar App\data` |
+
+When reporting bugs or issues, make sure to include these log files, as they help significantly in troubleshooting.
+
+## Configuration File
+
+The configuration file holds important settings that persist even after you close the application. It is essential not to alter these settings unless you are familiar with their function, as improper modifications could prevent the application from launching.
+
+### Configuration File Location
+
+The config file is located in platform-specific directories, as shown below:
+
+| Platform | Path | Example |
+| -------- | -------------------------------------------------------------------- | ------------------------------------------------------------- |
+| Linux | `$XDG_DATA_HOME`/`_project_path_` or `$HOME`/.local/share/`_project_path_` | `/home/alice/.local/share/barapp` |
+| macOS | `$HOME`/Library/Application Support/`_project_path_` | `/Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App` |
+| Windows | `{FOLDERID_RoamingAppData}`\\`_project_path_`\\data | `C:\Users\Alice\AppData\Roaming\Foo Corp\Bar App\data` |
+
+### Configuration
+
+If you need to customize Raspirus further, you can manually edit the configuration file. For example:
+
+- **Centralized Config Distribution**: Replace the config file on each user's system upon startup to enforce a common configuration.
+- **Custom Settings**: Set specific values, such as the path to custom YARA rules or scan behavior preferences.
+
+For more details on how to use and modify the configuration file, refer to the [developers page](developers.md#configuration).
+
+## Scanning
+
+Raspirus allows you to scan specific files, folders, and external drives for potential malware threats. The scanning process checks files against a database of YARA rules designed to detect known malicious patterns.
+
+### Supported Scanning Targets
+
+Raspirus can scan:
+
+- A folder and all of its subfolders.
+- A single file, including compressed files (e.g., ZIP, TAR).
+- A detachable drive (e.g., USB stick).
+
+### Permissions and Limitations
+
+To scan files, Raspirus requires read access to the files or directories in question. It cannot access password-protected compressed files or folders that are restricted by your operating system.
+
+!!! warning "Important!"
+ Do not attempt to scan your entire operating system or computer. For full system scans, it’s recommended to use a dedicated antivirus solution.
+
+### Scanning Process
+
+The scanning process involves analyzing files and their contents to match patterns against the YARA rule database. For compressed files, Raspirus will extract and scan the contents. If a file matches a known malware pattern, it will be flagged as potentially malicious.
+
+### Post-Scan Actions
+
+After completing a scan:
+
+- If no threats are detected, you may continue your tasks without concern.
+- If malware is found, Raspirus will display a list of flagged files and the detected threats.
+
+!!! note "Skipped files"
+ If Raspirus is not able to scan a file, it will skip it to avoid having to interrupt the scanning process.
+ Skipped files can normally be ignored, as its usually just a permission problem.
+
+Raspirus does **not** offer file deletion or quarantine options because the detection database may occasionally generate false positives. We recommend reviewing flagged files carefully and making decisions based on your own judgment or submitting suspicious files to services like [VirusTotal](https://www.virustotal.com) for further analysis.
diff --git a/docs/de/various/index.md b/docs/de/various/index.md
new file mode 100644
index 00000000..2479ff50
--- /dev/null
+++ b/docs/de/various/index.md
@@ -0,0 +1,17 @@
+# Various
+
+## License
+- [License](https://github.com/Raspirus/Raspirus/blob/main/LICENSE)
+
+This document contains the licensing terms under which Raspirus is distributed. It outlines your rights and responsibilities when using Raspirus.
+
+## Privacy Policy
+- [Privacy Policy](privacy.md)
+
+Our Privacy Policy explains how we handle your data when you use Raspirus. It details what information we collect, how we use it, and how we protect your privacy.
+
+## Legal Information
+- [Legal Information](legal.md)
+
+This document provides additional legal information related to Raspirus, including disclaimers and terms of service.
+
diff --git a/docs/de/various/legal.md b/docs/de/various/legal.md
new file mode 100644
index 00000000..c004dcde
--- /dev/null
+++ b/docs/de/various/legal.md
@@ -0,0 +1,27 @@
+# Legal Information
+
+Welcome to Raspirus, an open-source malware scanner designed to enhance your computer security. Please read the following terms carefully before using the Raspirus program.
+
+## Responsibilities and Consent
+
+When you use Raspirus, you acknowledge that you are solely responsible for any USB drive inserted into your computer and the potential impact it may have on your system. By running Raspirus on a USB drive, you consent to the drive being scanned for malware. This helps ensure your system's safety and security.
+
+## Limitations and Expectations
+
+While Raspirus is effective in detecting various types of malware, it cannot guarantee detection of all threats. Results from scans are provided for informational purposes only and should be reviewed with caution. It's important to understand the inherent risks of using USB drives, especially those from unknown sources. Exercise discretion and only use trusted USB drives to minimize potential risks.
+
+## Warranty Disclaimer
+
+Raspirus is provided "as is" without warranties of any kind, whether express or implied. Raspirus Maintainers make no guarantees regarding the performance or reliability of Raspirus, including its suitability for specific purposes.
+
+## Limitation of Liability
+
+In no event shall Raspirus Maintainers be liable for any damages arising from the use or inability to use Raspirus, including but not limited to data loss, system crashes, or any other damages resulting from malware or other causes.
+
+## Acceptance of Terms
+
+By using Raspirus, you agree to the terms outlined above. These terms are designed to protect both your interests and those of the Raspirus community. If you do not agree with these terms, please refrain from using Raspirus.
+
+---
+
+If you have any questions or concerns about these terms, please reach out to us at [raspirus.dev@gmail.com](mailto:raspirus.dev@gmail.com). We're here to help ensure your experience with Raspirus is as secure and effective as possible.
diff --git a/docs/de/various/privacy.md b/docs/de/various/privacy.md
new file mode 100644
index 00000000..f79e8af1
--- /dev/null
+++ b/docs/de/various/privacy.md
@@ -0,0 +1,29 @@
+# Privacy and Data Collection
+
+Thank you for using Raspirus, an open-source malware scanner. We are committed to protecting your privacy and ensuring transparency regarding how your data is handled. Please read the following information to understand our practices:
+
+## Data Collection
+
+Raspirus does not collect or store any personal data from its users. The application operates entirely offline, and all data processed by Raspirus remains local to your device. We do not track your usage patterns, IP addresses, or any other identifying information.
+
+### Logging
+
+Raspirus may generate logs as part of its normal operation to aid in diagnosing technical issues or debugging the application. These logs are stored locally on your device and never transmitted to us automatically. You, as the user, have full control over these logs and can choose to share them with us manually if seeking assistance or reporting a problem.
+
+### External Connections
+
+The only external connection Raspirus makes is during the process of updating its malware definition database. This connection is necessary to download the latest updates from GitHub, our chosen repository for maintaining these definitions. Please be aware that during this update process, GitHub may collect data as per its own privacy policies, over which we have no control.
+
+## User Control and Consent
+
+We do not collect any data from you unless explicitly provided by you (such as voluntarily sharing logs). Your usage of Raspirus is entirely anonymous and private by design. We respect your privacy and are committed to maintaining the confidentiality of any information you choose to share with us.
+
+## Future Commitment
+
+Raspirus is and will remain privacy-friendly. We do not foresee any changes to our policy of not collecting user data in the future. We have no interest in your personal data, and we will never compromise your trust by collecting it.
+
+## Contact Us
+
+If you have any questions, concerns, or feedback regarding our privacy practices or the use of Raspirus, please contact us at [raspirus.dev@gmail.com](mailto:raspirus.dev@gmail.com).
+
+Thank you for trusting Raspirus for your malware scanning needs while prioritizing your privacy.
diff --git a/docs/en/Developers/architecture.md b/docs/en/Developers/architecture.md
deleted file mode 100644
index f8799878..00000000
--- a/docs/en/Developers/architecture.md
+++ /dev/null
@@ -1,81 +0,0 @@
-# Architecture
-
-This page visualizes the general structure of the Raspirus project and its setup:
-
-``` mermaid
-graph LR
- A[Start] --> B{Scan location specified?};
- B --> |Yes| C[Start scan];
- C --> |Start Loop| D[File found];
- D --> E[Compare with rules];
- E --> F{Rule detected malware?};
- F --> |Yes| G[Flag as Malware];
- F --> |No| H[Flag as Safe];
- G & H --> I[Continue iteration];
- I --> J{Last file?};
- J --> |Yes| K[Stop scanner];
- K --> L[Display Results];
- J --> |No| M[Start again];
- M --> D;
- B --> |No| N[Stop]
-```
-
-Generally, we use a frontend-backend architecture, with both components written in Rust. The frontend uses the iced-rs framework and communicates with the backend natively using Rust.
-
-## Backend
-```mermaid
-classDiagram
- Main <|-- DBOps
- Main <|-- Configs
- Main <|-- FileLogs
- Main <|-- Scanner
- Main: +Config config_file
-
- class DBOps {
- +Connection db_conn
- +String db_file
- +TauriWindow t_win
- +new()
- +update_db()
- +hash_exists()
- }
-
- class Configs {
- +Data data
- +new()
- +save()
- +load()
- }
-
- class FileLogs {
- +File file
- +log()
- +create_file()
- }
-
- class Scanner {
- +String scan_loc
- +Vec malware_list
- +search_files()
- +create_hash()
- +get_folder_size()
- }
-```
-
-## Frontend
-
-### Home
-![Screenshot of Home page](../img/screenshots/home.png)
-
-### Scanning
-![Screenshot of scanning process](../img/screenshots/scanning.png)
-
-### Result
-![Screenshot of positive result](../img/screenshots/result.png)
-
-### Raspberry Pi Setup
-![Screenshot of Home page on Raspberry Pi](../img/screenshots/Rpihomesetup.jpg)
-
-![Screenshot of Raspberry Pi setup](../img/screenshots/Rpisetup.jpg)
-
-The visualization has evolved over the course of the project, but the page structure remains consistent.
\ No newline at end of file
diff --git a/docs/en/Developers/config.md b/docs/en/Developers/config.md
deleted file mode 100644
index 10dff1c2..00000000
--- a/docs/en/Developers/config.md
+++ /dev/null
@@ -1,25 +0,0 @@
-## Config
-The config file gets saved in the default System Configuration Folder. The structure should be the following:
-```json
-{
- "config_version": "6",
- "rules_version": "v1.1.2",
- "min_matches": 0,
- "max_matches": 20,
- "max_threads": 12,
- "logging_is_active": true,
- "mirror": "https://api.github.com/repos/Raspirus/yara-rules/releases/latest",
- "language": "en",
- "dark_mode": true
-}
-```
-This is an example from a running system with the latest release at the time of writing this.
-- `config_version`: This field contains the current config version. Older configs get overwritten if the new program version ships with a higher config version.
-- `rules_version`: The version of the rules that have been built last. This gets pulled from the `tag_name` field on the `mirror` JSON.
-- `min_matches`: The minimum amount of rules that need to match on a file for it to be reported
-- `max_matches`: The maximum amount of rules that match on a file, before no more matches get produced
-- `max_threads`: The amount of parallel threads for scanning. This should ideally be the amount of CPU threads. Systems which need performance for other tasks or that might experience thermal issues at full CPU usage, can set this lower.
-- `logging_is_active`: If set to false, terminal and file logging get disabled. For diagnostics purposes this should usually be enabled. However if storage is limited, it can be disabled in order to avoid filling up the disk with logging.
-- `mirror`: This field points to the API endpoint described in the Updater.
-- `language`: Contains the current language. At the time of writing this, supported languages are fr, en, it and de.
-- `dark_mode`: Toggles the dark mode of the application interface
\ No newline at end of file
diff --git a/docs/en/Developers/contributing.md b/docs/en/Developers/contributing.md
deleted file mode 100644
index 6f402c9c..00000000
--- a/docs/en/Developers/contributing.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributing
-
-## Enhance the Codebase
-
-As a developer looking to amplify Raspirus's functionality, your contributions are invaluable. Please adhere to the following guidelines:
-
-- **Check Existing Issues:** Before diving in, peruse existing issues to avoid creating duplicates. If none exist, feel free to open a new one.
-- **Documentation is Key:** Always ensure your code is well-documented. Remember to adapt tests to maintain code integrity.
-
-- [Read the Code of Conduct](https://github.com/Raspirus/docs/blob/main/CODE_OF_CONDUCT.md)
-
-## Enrich the Documentation
-
-Raspirus's documentation is crafted using Markdown and powered by [MkDocs](https://www.mkdocs.org/user-guide/installation/) and Python. To contribute to the documentation:
-
-- **Follow the Guide:** To begin, set up the documentation on your local machine by following the [guide](https://raspirus.github.io/docs/guides).
-- **Material Theme:** Our documentation utilizes the Material Theme, which extends Markdown functionality. Discover more about it [here](https://squidfunk.github.io/mkdocs-material/reference).
-
-## Drive Translations
-
-Our documentation is multilingual thanks to [Crowdin](https://crowdin.com/project/raspirus), an intuitive external service. GUI translations are handled via JSON files. Refer to the [guide](https://raspirus.github.io/docs/guides) for comprehensive insights.
-
-## Infuse Artwork and Media
-
-The repository for artwork (logos, banners, etc.) and media (powerpoints, articles, graphs, etc.) is hosted separately at [this repository](https://github.com/Raspirus/media). Feel free to contribute and bolster our visual presence. Note that the current logo and banner were AI-generated due to the lack of artistic expertise.
-
-## Provide Feedback
-
-Beyond the above contributions, there are other impactful ways to get involved:
-
-- **Join Discord:** Engage with our community on the [Discord server](https://discord.gg/Vx7fW9PA8B) to share valuable feedback and ideas.
-- **Consider Donating:** If you find value in Raspirus, consider [donating](https://github.com/sponsors/Raspirus) to support ongoing development.
-- **Spread the Word:** A simple yet effective way to contribute is by downloading Raspirus and introducing it to friends.
-
-Thank you for your dedication to Raspirus's growth and improvement. Your involvement is a cornerstone of our success.
\ No newline at end of file
diff --git a/docs/en/Developers/index.md b/docs/en/Developers/index.md
deleted file mode 100644
index 21e8b61c..00000000
--- a/docs/en/Developers/index.md
+++ /dev/null
@@ -1,29 +0,0 @@
-# Developers
-
-## Setup
-
-1. Clone the repository.
-2. Install [Rust](https://www.rust-lang.org/tools/install).
-3. Install the Rust package with:
- ```sh
- cargo install .
- ```
-4. Start development with:
- ```sh
- cargo run
- ```
-5. Or build Raspirus with:
- ```sh
- cargo build
- ```
-
-Should you encounter any issues during your initial run or build, ensure that you've followed each step carefully. Confirm the accurate creation of both logs and config files.
-
-## Documentation
-
-Since the entire project is written in Rust, you can generate the documentation with:
-```sh
-cargo doc --no-deps --open
-```
-
-This command will open the documentation in your browser.
\ No newline at end of file
diff --git a/docs/en/Developers/updater.md b/docs/en/Developers/updater.md
deleted file mode 100644
index 3904fd19..00000000
--- a/docs/en/Developers/updater.md
+++ /dev/null
@@ -1,14 +0,0 @@
-## Mirror
-The mirror flag in the config file should ideally point to a git API. Custom Mirrors need to have the following structure in JSON
-```json
-{
- "tag_name": "String", // eg. v1.1
- "zipball_url": "String" // http://example/download.zip
-}
-```
-- The `tag_name` supplies the version against which the local config gets checked
-- The `zipball_url` should point to the `.zip` archive which contains the rules
-## Updater
-The new and written-from-scratch Updater looks up the newest version indicated by your mirror online, and downloads the release .zip file to cache. Once that succeeds, it starts compiling all the `.yar` files into a compiled `.yarac`. This gets saved to the data directory (`~/.local/share/raspirus`, `%appdata%\Roaming\Raspirus\Data`, `/Applications/Raspirus/data`)
-## Release archive
-The zip should contain `.yar` files, which are uncompiled, raw YARA rules. The structure of the archive does not matter, as the files get added recursively. On Microsoft Windows, an optional script can be supplied to disable Windows Defender, from scanning the created compiled rules on disk, as that might result in them getting deleted. An example can be found [here](https://github.com/Raspirus/yara-rules/blob/main/scripts/windows.ps1) . The script is run with the Data Folder as argument.
diff --git a/docs/en/Installation/desktop.md b/docs/en/Installation/desktop.md
deleted file mode 100644
index cc9e8be2..00000000
--- a/docs/en/Installation/desktop.md
+++ /dev/null
@@ -1,48 +0,0 @@
-# Desktop Installation
-
-Raspirus supports a variety of operating systems, with official and unofficial installation methods.
-
-## Officially Supported Operating Systems
-- Windows 10 & 11
-- Debian-based Linux distributions (Debian, Ubuntu, PopOS, Mint, etc.)
-- macOS
-
-## Unofficially Supported Operating Systems
-- OpenSUSE
-- Arch-based Linux distributions
-
-There are multiple ways to install Raspirus, depending on your operating system and preference:
-
-## Windows
-
-### Simple Download
-You can install Raspirus by downloading the MSI or EXE from [our website](https://raspirus.deno.dev/downloads).
-
-### Chocolatey Setup
-Install Raspirus via [Chocolatey](https://community.chocolatey.org/packages/raspirus) with the command:
-```sh
-choco install raspirus
-```
-This method helps manage installations and keeps Raspirus up-to-date. Note that releases on Chocolatey may be delayed due to manual uploads.
-
-### SourceForge
-Alternatively, download the `.msi` from [SourceForge](https://sourceforge.net/projects/raspirus/).
-
-## Linux
-
-### Simple Download
-Install the DEB package from [our website](https://raspirus.deno.dev/downloads).
-
-### Snap Store
-Download Raspirus from the [Snap Store](https://snapcraft.io/raspirus). You can also choose different architectures, like ARM.
-
-### Flathub
-COMING SOON
-
-## macOS
-Currently, macOS users can download Raspirus from [our website](https://raspirus.deno.dev/downloads).
-
-## Other
-For all platforms, you can always download the executable directly from the release page on our [GitHub repository](https://github.com/Raspirus/Raspirus). This is the quickest way to get the most up-to-date release.
-
-If you prefer to build the project yourself, follow the guide in the [Developer section](../Developers/index.md).
diff --git a/docs/en/Installation/index.md b/docs/en/Installation/index.md
deleted file mode 100644
index cfde38ee..00000000
--- a/docs/en/Installation/index.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Installation
-
-Raspirus is designed to be lightweight and efficient, making it perfect for devices like the Raspberry Pi. However, since it's written in Rust, it supports cross-platform installation.
-
-Choose your platform to get started:
-
-- [Desktop](desktop.md)
-- [Raspberry Pi](raspberry-pi.md)
-- [Mobile Devices](mobile-devices.md) (COMING SOON)
diff --git a/docs/en/Installation/mobile-devices.md b/docs/en/Installation/mobile-devices.md
deleted file mode 100644
index 64365fcf..00000000
--- a/docs/en/Installation/mobile-devices.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Mobile Devices
-COMING SOON
\ No newline at end of file
diff --git a/docs/en/Installation/raspberry-pi.md b/docs/en/Installation/raspberry-pi.md
deleted file mode 100644
index 0971f210..00000000
--- a/docs/en/Installation/raspberry-pi.md
+++ /dev/null
@@ -1,61 +0,0 @@
-# Raspberry Pi
-
-## Requirements
-- Raspirus requires a screen to function. You can use it without a mouse or keyboard, operating solely through a touchscreen.
-- The screen should ideally be larger than 7 inches. The app is tested on a 10-inch screen, and we can't guarantee proper scaling on smaller screens.
-
-### Packages
-On Linux, ensure you have the same packages installed as those used to build the application. Not having the correct versions may result in errors such as: `raspirus : error while loading shared libraries : libssl.so.3 : cannot open shared object file : no such file or directory`.
-
-Required packages:
-- libwebkit2gtk-4.1-dev
-- openssl 3
-
-To check if a package is installed, use:
-```sh
-apt list [package]
-```
-
-## Installation
-
-!!! danger
- Do not install or perform actions as the sudo user. Always run commands as the main user and use `sudo` when necessary. Switching to the sudo user and performing the installation will break it.
-
-### Remote Access
-If you don't have direct access to the Raspberry Pi, you can install the application remotely using the CLI.
-
-1. Connect to the Raspberry Pi via CLI. Follow a tutorial that suits your situation, such as the [official Raspberry Pi tutorial](https://www.raspberrypi.com/documentation/computers/remote-access.html).
-2. Visit our [GitHub Release](https://github.com/Raspirus/Raspirus/releases/latest) page and copy the link to the `.deb` file for your architecture.
-3. On the CLI of your Raspberry Pi, run:
- ```sh
- wget [URL copied above]
- ```
- This will download the Raspirus `.deb` file. Now, follow the Direct Access instructions to install the app.
-
-### Direct Access
-If you have direct access to the Raspberry Pi with a mouse and keyboard:
-
-1. Download the `.deb` file from [our website](https://raspirus.deno.dev/downloads).
-2. Install it using:
- ```sh
- apt install ./[path to raspirus file.deb]
- ```
- or
- ```sh
- dpkg -i ./[path to raspirus file.deb]
- ```
-3. Alternatively, install Raspirus from the [Snap Store](https://snapcraft.io/raspirus). Ensure you select the correct architecture.
-
-## Tips
-- Check if a package is installed:
- ```sh
- apt list [package]
- ```
-- Check the architecture:
- ```sh
- uname -m
- ```
-
-## Known Issues
-- When installing the app via remote access, an error might occur indicating the app is not detecting a screen. This happens because the system doesn't detect a screen when running the app from the CLI, even if one is connected.
-- If you encounter dependency issues, try the AppImage. If issues persist, consider downgrading or upgrading your OS. Always report these issues to us on Discord or GitHub so we can analyze them further.
\ No newline at end of file
diff --git a/docs/en/Usage/config.md b/docs/en/Usage/config.md
deleted file mode 100644
index 4c51cd8a..00000000
--- a/docs/en/Usage/config.md
+++ /dev/null
@@ -1,32 +0,0 @@
-## Config
-
-The config file stores your settings when you close the app and includes some important variables. Avoid changing these values unless you know what you're doing, as a malformed file structure will prevent the app from starting.
-
-### Location
-
-| Platform | Value | Example |
-| -------- | --------------------------------------------------------------------------- | ------------------------------------------------------------- |
-| Linux | `$XDG_DATA_HOME`/`_project_path_` or `$HOME`/.local/share/`_project_path_` | /home/alice/.local/share/barapp |
-| macOS | `$HOME`/Library/Application Support/`_project_path_` | /Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App |
-| Windows | `{FOLDERID_RoamingAppData}`\\`_project_path_`\\data | C:\Users\Alice\AppData\Roaming\Foo Corp\Bar App\data |
-
-### Structure
-
-```json
-{
- "config_version": "5",
- "rules_version": "None",
- "min_matches": 0,
- "max_matches": 20,
- "max_threads": 8,
- "logging_is_active": true,
- "mirror": "https://api.github.com/repos/Raspirus/yara-rules/releases/latest",
- "language": "en"
-}
-```
-
-You can set a custom `mirror` to another URL. The mirror points to the location where all the rules are stored and uses them to build the database. This allows you to create your own database with custom YARA rules.
-
-### Usage
-
-You might want to manually change the config file if you have special requirements. For instance, you could distribute a central config to all users by replacing the config file on each startup. Another use case could be troubleshooting or setting custom settings, like the path to the yara rules.
\ No newline at end of file
diff --git a/docs/en/Usage/index.md b/docs/en/Usage/index.md
deleted file mode 100644
index d1a4c552..00000000
--- a/docs/en/Usage/index.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# Usage
-
-Using Raspirus is fairly simple. It has been designed to be used without a keyboard or mouse and completely with touchscreen.
-Generally speaking you shouldn't have any issues trying to ue Raspirus, as the UI is made very simple.
-In this section we further explain the available settings and scanning functionality.
-
-
-## Navigating Logs and Configurations
-
-In the event of unexpected occurrences or sudden app crashes, examining logs and configurations can provide insights. Locate these files in the following folders, based on your operating system. The [ProjectDirs crate](https://docs.rs/directories-next/latest/directories_next/struct.ProjectDirs.html) stores them at the following location:
-
-**Log file location:**
-
-|Platform | Value | Example |
-| ------- | -------------------------------------------------------------------------- | ------------------------------------------------------------- |
-| Linux | `$XDG_DATA_HOME`/`_project_path_` or `$HOME`/.local/share/`_project_path_` | /home/alice/.local/share/barapp |
-| macOS | `$HOME`/Library/Application Support/`_project_path_` | /Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App |
-| Windows | `{FOLDERID_LocalAppData}`\\`_project_path_`\\data | C:\Users\Alice\AppData\Local\Foo Corp\Bar App\data |
-
-
-Ensure to include these files when reporting bugs, as they greatly assist in troubleshooting.
\ No newline at end of file
diff --git a/docs/en/Usage/scanning.md b/docs/en/Usage/scanning.md
deleted file mode 100644
index faf173dc..00000000
--- a/docs/en/Usage/scanning.md
+++ /dev/null
@@ -1,19 +0,0 @@
-## Scanning
-
-### Options
-Raspirus allows you to scan the following:
-
-- A folder and all its subfolders
-- A single file, including compressed files
-- A detachable drive, such as USB sticks
-
-### Requirements
-You need permissions to access and read the files you want to scan. Raspirus cannot scan password-secured compressed files or folders secured by your operating system. Additionally, avoid scanning the entire operating system or your entire computer with Raspirus. For comprehensive system scans, use a full-fledged antivirus instead.
-
-### Scanning Procedure
-Scanning involves inspecting the patterns of each file. In the case of compressed files, Raspirus extracts and scans the files within. Each pattern is checked against the database of rules, determining whether it matches known malware patterns. If a match is found, the file is flagged as malware; otherwise, it's deemed safe.
-
-### After the Scan
-If no malware is detected, you can proceed with your tasks. If malware is found, Raspirus displays a list of identified threats. You have the option to submit suspicious signatures to VirusTotal for further analysis.
-
-Raspirus does not offer options to delete or quarantine files because our database may produce false positives. Always inspect files flagged by Raspirus and decide on their disposition based on your judgment.
diff --git a/docs/en/contact.md b/docs/en/contact.md
deleted file mode 100644
index f84c318b..00000000
--- a/docs/en/contact.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# Contact
-
-We'd love to hear from you! Depending on your needs, here are the best ways to get in touch:
-
-## General Inquiries
-Join our [Discord community](https://discord.gg/Vx7fW9PA8B) for general questions and discussions.
-
-## Private Issues
-For private matters, feel free to [email us](mailto:raspirus.dev@gmail.com).
-
-## Bug Reports and Feature Requests
-If you have bug reports, feature requests, or other code-related issues, please use our [GitHub Issues](https://github.com/Raspirus/Raspirus) system or the dedicated channels on our Discord server.
-
-## Quick Links:
-- :simple-discord: [Discord](https://discord.gg/Vx7fW9PA8B)
-- :simple-gmail: [Email](mailto:raspirus.dev@gmail.com)
-- :simple-github: [GitHub](https://github.com/Raspirus/Raspirus)
diff --git a/docs/en/contributing.md b/docs/en/contributing.md
new file mode 100644
index 00000000..84e5a90e
--- /dev/null
+++ b/docs/en/contributing.md
@@ -0,0 +1,47 @@
+# Contributing
+
+## Code Contributions
+
+We welcome contributions! Before starting, please:
+
+- **Check existing issues** to avoid duplicates.
+- **Follow documentation & coding standards.**
+- **Write tests** when applicable.
+
+🔗 **[Read the Code of Conduct](https://github.com/Raspirus/docs/blob/main/CODE_OF_CONDUCT.md)**
+
+## Documentation Contributions
+
+Our documentation is built with [MkDocs](https://www.mkdocs.org/user-guide/installation/) and enhanced with the [Material Theme](https://squidfunk.github.io/mkdocs-material/reference/).
+
+To contribute:
+
+1. Clone the [documentation repository](https://github.com/Raspirus/docs).
+2. Set up MkDocs locally.
+3. Submit a pull request with your improvements.
+
+## Translation Contributions
+
+Raspirus is multilingual! We use [Crowdin](https://crowdin.com/project/raspirus) for translations.
+
+- GUI translations use JSON files.
+- Documentation translations follow the [contribution guide](https://raspirus.github.io/docs/guides).
+
+## Artwork & Media
+
+We maintain a separate [media repository](https://github.com/Raspirus/media) for:
+
+- Logos, banners, and promotional images.
+- PowerPoints, articles, and infographics.
+
+Feel free to contribute and improve Raspirus’s visual presence!
+
+## Community & Feedback
+
+Join the discussion and help shape Raspirus:
+
+- 💬 **[Join our Discord](https://discord.gg/Vx7fW9PA8B)**
+- 💰 **[Consider sponsoring Raspirus](https://github.com/sponsors/Raspirus)**
+- 🌍 **Spread the word!**
+
+Thank you for your support and contributions! 🚀
\ No newline at end of file
diff --git a/docs/en/developers.md b/docs/en/developers.md
new file mode 100644
index 00000000..dfc09fe5
--- /dev/null
+++ b/docs/en/developers.md
@@ -0,0 +1,135 @@
+# Developers
+
+Welcome to the Raspirus developer guide! This page outlines everything you need to contribute effectively, from setting up your environment to understanding the architecture and updating YARA rules.
+
+---
+
+## Setup
+
+To begin development, follow these steps:
+
+1. Clone the repository:
+ ```sh
+ git clone https://github.com/Raspirus/raspirus.git
+ cd raspirus
+ ```
+2. Install [Rust](https://www.rust-lang.org/tools/install).
+3. Install the Raspirus package:
+ ```sh
+ cargo install .
+ ```
+4. Start development:
+ ```sh
+ cargo run
+ ```
+5. Or build Raspirus:
+ ```sh
+ cargo build
+ ```
+
+### Troubleshooting Setup Issues
+If you encounter issues while building or running Raspirus:
+
+- Ensure Rust is installed correctly.
+- Verify that logs and config files are created properly.
+- Check for dependency conflicts and missing packages.
+
+---
+
+## Documentation
+
+Since Raspirus is written in Rust, you can generate developer documentation with:
+```sh
+cargo doc --no-deps --open
+```
+This will open the generated documentation in your browser.
+
+---
+
+## Architecture
+
+Raspirus follows a **frontend-backend** architecture, with both components written in Rust.
+
+### Frontend
+
+- Uses **iced-rs** for GUI rendering.
+- Prioritizes user experience—ideally, users should never need to open the settings page.
+- Designed for **touch support**, minimizing keyboard input.
+- Plug-and-play: Can be replaced with another frontend if needed.
+- Simple structure, similar to a website with just a few pages.
+
+### Backend
+
+- **Multi-threaded** for efficient scanning.
+- Handles scanning, rule processing, and settings management.
+- Implements **YARA rules** for malware detection.
+- Well-documented functions—if in doubt, check the code directly.
+- Despite its complexity, it becomes easier to navigate once you start working with it.
+
+---
+
+## Configuration
+
+The configuration file is stored in the default system configuration folder:
+
+```json
+{
+ "config_version": "6",
+ "rules_version": "v1.1.2",
+ "min_matches": 0,
+ "max_matches": 20,
+ "max_threads": 12,
+ "logging_is_active": true,
+ "mirror": "https://api.github.com/repos/Raspirus/yara-rules/releases/latest",
+ "language": "en",
+ "dark_mode": true
+}
+```
+
+### Key Fields
+
+- `config_version`: Determines if an older config needs to be overwritten.
+- `rules_version`: Tracks the last downloaded YARA rules version.
+- `min_matches`: Minimum number of rule matches required to flag a file.
+- `max_matches`: Maximum rule matches before stopping further checks.
+- `max_threads`: Number of CPU threads used for scanning.
+- `logging_is_active`: Enables/disables logging (useful when storage is limited).
+- `mirror`: API endpoint for fetching rule updates.
+- `language`: Current language (supports `fr`, `en`, `it`, `de`).
+- `dark_mode`: Toggles the application’s dark mode.
+
+---
+
+## Mirrors
+
+The `mirror` setting in the config file should point to a Git API. Custom mirrors must provide JSON with the following structure:
+
+```json
+{
+ "tag_name": "v1.1",
+ "zipball_url": "http://example.com/download.zip"
+}
+```
+
+- `tag_name`: Specifies the version for update checks.
+- `zipball_url`: Direct link to the `.zip` archive containing YARA rules.
+
+---
+
+## Updater
+
+Raspirus has a **built-from-scratch updater** that:
+
+1. Checks the latest available version using the configured mirror.
+2. Downloads the `.zip` archive to cache.
+3. Compiles all `.yar` files into a `.yarac` (compiled YARA rules).
+4. Saves the compiled rules in:
+ - **Linux/macOS**: `~/.local/share/raspirus`
+ - **Windows**: `%appdata%\Roaming\Raspirus\Data`
+ - **macOS (App Bundle)**: `/Applications/Raspirus/data`
+
+### Release Archive Structure
+
+The update `.zip` should contain **uncompiled YARA `.yar` files**. The folder structure inside the archive does not matter, as files are added recursively.
+
+📌 **Windows Users:** If Windows Defender interferes with compiled YARA rules, an optional script can disable Defender scanning. See [this script](https://github.com/Raspirus/yara-rules/blob/main/scripts/windows.ps1).
diff --git a/docs/en/faq.md b/docs/en/faq.md
index 3dae4637..b28add4e 100644
--- a/docs/en/faq.md
+++ b/docs/en/faq.md
@@ -1,24 +1,99 @@
-# FAQ
+# FAQ
-??? question "App crashes when updating"
- On Windows, it has been observed that the app crashes when attempting to update the database. We are aware of this issue and actively working to resolve it. The problem arises because the update function requires administrative privileges, which Windows does not automatically provide. To temporarily resolve this issue, you can execute the app with administrative privileges. Right-click on the app and select "Run as administrator" to launch it with the necessary privileges.
+Below are some frequently asked questions about Raspirus. Click on any question to expand the answer.
-??? question "Where does the Raspirus logo come from?"
- The logo of the Raspirus app features a red monster named Stuart, who is designed to represent a virus-eating creature. The logo was generated using [DALL-E](https://openai.com/product/dall-e-2), along with creative image editing and merging. Stuart is a friendly monster, except when he's hungry for viruses. You can find additional media and documents in the [dedicated repository](https://github.com/Raspirus/media). Feel free to use these images to create your own artwork and share them in the [discussion boards](https://github.com/orgs/Raspirus/discussions).
+## General
-??? question "Can I use Raspirus offline?"
- Yes, except for the update, everything on Raspirus works offline. The database is built locally, you only need to be connected to the internet during the database update, as we fetch the signatures from our GitHub repository.
+??? question "Where does the Raspirus logo come from?"
+ The Raspirus logo features a red monster named **Stuart**, designed to represent a virus-eating creature. The logo was generated using [DALL-E](https://openai.com/product/dall-e-2), with additional image editing and merging.
-??? question "What are the minimum requirements for the app to work?"
- Raspirus is built to work and almost any system. It even works well on a RPi 3B+. Nonetheless, we recommend having:
+ Stuart is a friendly monster—except when he's hungry for viruses. You can find additional media and assets in the [dedicated repository](https://github.com/Raspirus/media). Feel free to use these images for your own artwork and share them in the [discussion boards](https://github.com/orgs/Raspirus/discussions).
- - 1 GB of RAM
- - minimum of 10 GB of space (probably less)
- - Dual core CPU (The better, the faster Raspirus will be)
- - A display for the GUI
+??? question "Can I use Raspirus offline?"
+ Yes! Raspirus works offline except for updates. The YARA rules database is built locally, and an internet connection is only needed when fetching the latest rules from our GitHub repository.
-??? question "Can't select directories/files"
- You can change what type of asset you want the scan by clicking the orange icon near the selection dropdown and select what you would like to scan. The options are: USBs, Folder or File.
+## Installation & Compatibility
-??? question "How do I add my own yara rules to the main repository?"
- Raspirus fetches rules from the [yara-rules repository](https://github.com/Raspirus/yara-rules) and creates the database locally. You can add rules to the repository by creating an issue or PR request on that repository.
\ No newline at end of file
+??? question "What are the minimum system requirements?"
+ Raspirus is lightweight and works on most systems, including low-power devices like the Raspberry Pi 3B+. However, for the best experience, we recommend:
+
+ - **RAM:** ~1 GB
+ - **Storage:** ~200 MB
+ - **CPU:** Dual-core processor (higher performance results in faster scans)
+ - **Display:** Required for the GUI (no strict minimum size, but smaller screens may impact usability)
+
+??? question "Issue when installing Raspirus on Linux"
+ **Do not install or perform actions as the `sudo` user.** Always run commands as your main user and use `sudo` only when necessary.
+
+ Switching to the `sudo` user and performing the installation will **break** the setup.
+
+??? question "Why can't I select directories or files?"
+ To change the type of asset you want to scan, click the **orange icon** near the selection dropdown. You can choose between:
+
+ - **USB drives**
+ - **Folders**
+ - **Individual files**
+
+??? question "Which operating systems and architectures are supported?"
+ Raspirus supports multiple operating systems and CPU architectures:
+
+ - **Windows:** Windows 10 & 11 (x86_64)
+ - **Linux:** Debian-based distributions (Debian, Ubuntu, PopOS, Mint, etc.) (x86_64, ARM64)
+ - **macOS:** Intel & Apple Silicon (x86_64, aarch64)
+
+ Additionally, Raspirus is **unofficially supported** on:
+
+ - OpenSUSE (x86_64, ARM64)
+ - Arch-based Linux distributions (x86_64, ARM64)
+
+ **Experimental support:** RISC-V 64 on Linux.
+
+## Customization
+
+??? question "How do I add my own YARA rules?"
+ Raspirus fetches rules from the [yara-rules repository](https://github.com/Raspirus/yara-rules) and builds the database locally.
+
+ If you want to contribute new rules:
+ - Open an **issue** or submit a **pull request (PR)** on the [yara-rules repository](https://github.com/Raspirus/yara-rules).
+
+ If you prefer to use your own rules:
+ - Modify the configuration file to fetch rules from your own repository instead.
+
+---
+
+## Known Issues
+
+??? warning "Remote installation error: App not detecting a screen"
+ If you install Raspirus via remote access, you may see an error indicating the app **is not detecting a screen**.
+
+ This happens because the system doesn't register a screen when running the app from the CLI, even if one is physically connected.
+
+??? warning "Dependency issues when installing Raspirus"
+ If you encounter dependency issues:
+ - Try using the **AppImage** version.
+ - If issues persist, consider **downgrading or upgrading your OS**.
+
+ Always report these issues on [Discord](https://discord.gg/raspirus) or [GitHub](https://github.com/Raspirus/raspirus/issues) so we can investigate further.
+
+---
+
+## Important GitHub Issues to Check
+
+Before reporting a problem, please check the following commonly referenced issues:
+
+??? note "Commonly Reported Issues"
+ - **[#852 - No armv7 (32-bit) support](https://github.com/Raspirus/raspirus/issues/852)**
+ - **[#891 - Missing fonts](https://github.com/Raspirus/raspirus/issues/891)**
+ - **[#902 - "Failed to open yar file" error](https://github.com/Raspirus/raspirus/issues/902)**
+ - **[#937 - ARM64 deb does not install on RaspiOS (Debian 12 Bookworm)](https://github.com/Raspirus/raspirus/issues/937)**
+
+This is not a complete list—just a selection of frequently reported issues. If you encounter an error, check the [GitHub issues](https://github.com/Raspirus/raspirus/issues) first to see if a solution already exists before requesting support.
+
+## Contributing Fixes
+
+We are happy to assist when possible, but our time is limited. If you find a solution to a problem, consider sharing it:
+
+- If an **existing issue** covers your problem, add a comment with your fix.
+- If you discover a **new issue** and a workaround, open an issue and document the solution for others.
+
+Your contributions help improve Raspirus for everyone! 🚀
diff --git a/docs/en/index.md b/docs/en/index.md
index f78c650c..a194aaf1 100644
--- a/docs/en/index.md
+++ b/docs/en/index.md
@@ -1,20 +1,17 @@
-# HOME
+# Home
-![Full banner logo](../img/banner_logo.png)
+
+
+
+
-## Introduction
+## Introduction
-Raspirus: Empowering Your Malware Protection
+Raspirus is a lightweight, rules-based malware scanner designed for scanning files and directories. Originally developed to scan USB drives using a Raspberry Pi, it has since expanded to support local file and folder scanning on multiple platforms.
-Welcome to the official documentation for Raspirus, your lightweight rules-based malware scanner. Originally designed to scan attached USB drives using a Raspberry Pi, Raspirus has evolved into a versatile tool capable of scanning local files and folders as well. Some of its standout features include:
+Raspirus utilizes YARA-based detection rules to identify potential threats, offering a flexible and privacy-conscious approach to malware scanning. It supports scanning compressed files, ensuring thorough analysis. The project is community-supported and operates without cost, relying on donations.
-- **Cost-Free Protection:** Raspirus operates solely on donations, ensuring top-notch protection without any financial burden.
-- **Tailored Yara Detection:** Our custom rules-based approach guarantees accurate identification of malware.
-- **Comprehensive File Scans:** Raspirus can efficiently scan compressed files, ensuring no threat goes undetected.
-- **Privacy Prioritized:** Offering a privacy-friendly option, Raspirus keeps your personal information secure.
-- **Cross-Platform Convenience:** Enjoy the benefits of Raspirus protection on a variety of operating systems.
-- **Swift and Dependable:** Count on Raspirus for fast and reliable malware detection.
-- **Sleek Modern Interface:** With user-friendliness at its core, Raspirus boasts a beautiful and intuitive UI.
+Designed for efficiency and ease of use, Raspirus provides a modern interface while maintaining fast and reliable scanning performance.
## Getting Started
@@ -22,17 +19,20 @@ Welcome to the official documentation for Raspirus, your lightweight rules-based
Getting started with Raspirus is a breeze. Follow these simple steps:
-1. Visit our [website](https://raspirus.deno.dev) or head to the [GitHub release page](https://github.com/Raspirus/Raspirus/releases/latest).
+1. Visit our [website](https://raspirus.deno.dev) or head to the [GitHub release page](https://github.com/Raspirus/raspirus/releases/latest).
2. Download the executable that matches your operating system.
-!!! note
+**Alterantives:**
- If you plan to use Raspirus on the Raspberry Pi as a standalone application, we have a [dedicated guide](Installation/raspberry-pi.md) for it.
+- [Snap Store (Linux)](https://snapcraft.io/raspirus/)
+- [Flathub (Linux)](https://flathub.org/apps/details/io.github.raspirus.raspirus)
+- [SourceForge](https://sourceforge.net/projects/raspirus/files/latest/download)
+- [Chocolatey (Windows)](https://community.chocolatey.org/packages/raspirus/)
### For Developers
-Are you a developer looking to set up Raspirus? We've got you covered. Check out our comprehensive guides for various operating systems in the [Developers section](Developers/index.md).
+Are you a developer looking to set up Raspirus? We've got you covered. Check out our comprehensive guides for various operating systems in the [Developers section](developers.md).
## Questions?
@@ -40,26 +40,41 @@ Got questions about Raspirus? We're here to help!
- Visit our [FAQ section](faq.md) for answers to common queries.
- Join our thriving community on the [Discord server](https://discord.gg/Vx7fW9PA8B) to engage with fellow users.
-- If you've encountered a bug, browse the GitHub issues to see if it's already reported.
+- If you've encountered a bug, browse the [GitHub issues](https://github.com/Raspirus/raspirus/issues) to see if it's already reported.
Thank you for choosing Raspirus for your malware protection needs. Together, we're making the digital world safer for everyone.
## Screenshots
-!!! note
+### Home page
+
+
+
+
- The screenshots below are outdated, but the style and structure remains roughly the same
+### Settings page
+
+
+
+
-### Home
-![Screenshot of Home page](../img/screenshots/home.png)
-### Scanning
-![Screenshot of scanning process](../img/screenshots/scanning.png)
+### About page
+
+
+
+
-### Result
-![Screenshot of positive result](../img/screenshots/result.png)
-### Raspberry Pi Setup
-![Screenshot of Home page on Raspberry Pi](../img/screenshots/Rpihomesetup.jpg)
+## Contact
-![Screenshot of Raspberry Pi setup](../img/screenshots/Rpisetup.jpg)
\ No newline at end of file
+We'd love to hear from you! Depending on your needs, here are the best ways to get in touch:
+
+- Join our [Discord community](https://discord.gg/Vx7fW9PA8B) for general questions and discussions.
+- For private matters, feel free to [email us](mailto:raspirus.dev@gmail.com).
+- If you have bug reports, feature requests, or other code-related issues, please use our [GitHub Issues](https://github.com/Raspirus/raspirus) system or the dedicated channels on our Discord server.
+
+### Quick Links
+- :simple-discord: [Discord](https://discord.gg/Vx7fW9PA8B)
+- :simple-gmail: [Email](mailto:raspirus.dev@gmail.com)
+- :simple-github: [GitHub](https://github.com/Raspirus/raspirus)
\ No newline at end of file
diff --git a/docs/en/scanning.md b/docs/en/scanning.md
new file mode 100644
index 00000000..f830d26a
--- /dev/null
+++ b/docs/en/scanning.md
@@ -0,0 +1,29 @@
+# Scanning
+
+Scanning files for malware can be achieved through various methods, such as Yara Rules or sandboxing. Antivirus applications often scan the entire process tree of an executable to identify malware. However, Raspirus is designed differently. It is a lightweight, on-demand file scanner optimized for low-end devices like the Raspberry Pi.
+
+Raspirus now leverages the power of the `yara-x` crate and Yara rules for its malware detection. Instead of relying on file signatures, Raspirus uses a flexible and powerful rule-based approach, scanning files for patterns and characteristics that match known malware behaviors. Yara rules are stored in a dedicated repository [here](https://github.com/Raspirus/yara-rules), and these rules are regularly updated to ensure broader and more accurate malware detection.
+
+There are no restrictions on the type or size of files you can scan with Raspirus.
+
+## Disadvantages
+
+While the shift to Yara rules improves detection capabilities, there are still some limitations:
+
+1. **Rule Complexity**: Writing and maintaining Yara rules can be complex. Although the rules provide more flexibility than simple hash matching, they require constant updating to cover new and evolving malware.
+
+2. **False Positives**: Due to the pattern-based nature of Yara rules, there may still be cases where legitimate files are flagged as malware. However, the rules are designed to minimize these occurrences compared to a pure signature-based approach.
+
+## Advantages
+
+Raspirus, powered by Yara, offers several distinct advantages:
+
+1. **Improved Detection**: Yara rules enable Raspirus to detect malware more accurately, even if the malware has been altered slightly or does not have a matching hash in a database. This allows for a more robust defense against various malware types.
+
+2. **Efficiency**: Although Yara rules are more resource-intensive than signature matching, Raspirus remains optimized for low-resource devices like Raspberry Pi, providing fast and efficient scans without overwhelming system resources.
+
+3. **Offline Capability**: Once the Yara rule database is downloaded and updated, Raspirus continues to function offline, maintaining the convenience of offline scanning.
+
+Raspirus no longer uses pure signature matching due to its limitations in detecting modified or new malware. Instead, it provides a more comprehensive scanning solution while still remaining lightweight. However, like any security tool, it is not intended to replace a full-fledged antivirus application. Users should be cautious when scanning internal system files to minimize false positives.
+
+Raspirus is continually evolving, and we are actively working to improve its scanning accuracy and expand its Yara rule database.
diff --git a/docs/en/usage.md b/docs/en/usage.md
new file mode 100644
index 00000000..3c24087f
--- /dev/null
+++ b/docs/en/usage.md
@@ -0,0 +1,78 @@
+# Usage Guide
+
+Raspirus is designed to offer a straightforward and user-friendly experience. It eliminates the need for a keyboard or mouse by providing a fully touchscreen-based interface. The application has been developed with simplicity in mind, ensuring that navigating and using Raspirus is intuitive. In this section, we will explain the available settings and scanning functionalities in more detail.
+
+## Navigating Logs and Configurations
+
+In cases of unexpected errors or application crashes, reviewing logs and configuration files can provide valuable insights. These files are stored in platform-specific directories, managed by the [ProjectDirs crate](https://docs.rs/directories-next/latest/directories_next/struct.ProjectDirs.html).
+
+### Log File Location
+
+The log files are stored in different locations depending on the operating system. Below is a table of default paths:
+
+| Platform | Path | Example |
+| -------- | -------------------------------------------------------------------- | ------------------------------------------------------------- |
+| Linux | `$XDG_DATA_HOME`/`_project_path_` or `$HOME`/.local/share/`_project_path_` | `/home/alice/.local/share/barapp` |
+| macOS | `$HOME`/Library/Application Support/`_project_path_` | `/Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App` |
+| Windows | `{FOLDERID_LocalAppData}`\\`_project_path_`\\data | `C:\Users\Alice\AppData\Local\Foo Corp\Bar App\data` |
+
+When reporting bugs or issues, make sure to include these log files, as they help significantly in troubleshooting.
+
+## Configuration File
+
+The configuration file holds important settings that persist even after you close the application. It is essential not to alter these settings unless you are familiar with their function, as improper modifications could prevent the application from launching.
+
+### Configuration File Location
+
+The config file is located in platform-specific directories, as shown below:
+
+| Platform | Path | Example |
+| -------- | -------------------------------------------------------------------- | ------------------------------------------------------------- |
+| Linux | `$XDG_DATA_HOME`/`_project_path_` or `$HOME`/.local/share/`_project_path_` | `/home/alice/.local/share/barapp` |
+| macOS | `$HOME`/Library/Application Support/`_project_path_` | `/Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App` |
+| Windows | `{FOLDERID_RoamingAppData}`\\`_project_path_`\\data | `C:\Users\Alice\AppData\Roaming\Foo Corp\Bar App\data` |
+
+### Configuration
+
+If you need to customize Raspirus further, you can manually edit the configuration file. For example:
+
+- **Centralized Config Distribution**: Replace the config file on each user's system upon startup to enforce a common configuration.
+- **Custom Settings**: Set specific values, such as the path to custom YARA rules or scan behavior preferences.
+
+For more details on how to use and modify the configuration file, refer to the [developers page](developers.md#configuration).
+
+## Scanning
+
+Raspirus allows you to scan specific files, folders, and external drives for potential malware threats. The scanning process checks files against a database of YARA rules designed to detect known malicious patterns.
+
+### Supported Scanning Targets
+
+Raspirus can scan:
+
+- A folder and all of its subfolders.
+- A single file, including compressed files (e.g., ZIP, TAR).
+- A detachable drive (e.g., USB stick).
+
+### Permissions and Limitations
+
+To scan files, Raspirus requires read access to the files or directories in question. It cannot access password-protected compressed files or folders that are restricted by your operating system.
+
+!!! warning "Important!"
+ Do not attempt to scan your entire operating system or computer. For full system scans, it’s recommended to use a dedicated antivirus solution.
+
+### Scanning Process
+
+The scanning process involves analyzing files and their contents to match patterns against the YARA rule database. For compressed files, Raspirus will extract and scan the contents. If a file matches a known malware pattern, it will be flagged as potentially malicious.
+
+### Post-Scan Actions
+
+After completing a scan:
+
+- If no threats are detected, you may continue your tasks without concern.
+- If malware is found, Raspirus will display a list of flagged files and the detected threats.
+
+!!! note "Skipped files"
+ If Raspirus is not able to scan a file, it will skip it to avoid having to interrupt the scanning process.
+ Skipped files can normally be ignored, as its usually just a permission problem.
+
+Raspirus does **not** offer file deletion or quarantine options because the detection database may occasionally generate false positives. We recommend reviewing flagged files carefully and making decisions based on your own judgment or submitting suspicious files to services like [VirusTotal](https://www.virustotal.com) for further analysis.
diff --git a/docs/img/RaspActDark.png b/docs/img/RaspActDark.png
deleted file mode 100644
index 3f25448e..00000000
Binary files a/docs/img/RaspActDark.png and /dev/null differ
diff --git a/docs/img/RaspActLight.png b/docs/img/RaspActLight.png
deleted file mode 100644
index dea5f0e2..00000000
Binary files a/docs/img/RaspActLight.png and /dev/null differ
diff --git a/docs/img/banner_logo.png b/docs/img/banner_logo.png
deleted file mode 100644
index 43ebc2db..00000000
Binary files a/docs/img/banner_logo.png and /dev/null differ
diff --git a/docs/img/screenshots/Rpihomesetup.jpg b/docs/img/screenshots/Rpihomesetup.jpg
deleted file mode 100644
index 1360d3c7..00000000
Binary files a/docs/img/screenshots/Rpihomesetup.jpg and /dev/null differ
diff --git a/docs/img/screenshots/Rpisetup.jpg b/docs/img/screenshots/Rpisetup.jpg
deleted file mode 100644
index 3dbacf87..00000000
Binary files a/docs/img/screenshots/Rpisetup.jpg and /dev/null differ
diff --git a/docs/img/screenshots/home.png b/docs/img/screenshots/home.png
deleted file mode 100644
index ac9639e6..00000000
Binary files a/docs/img/screenshots/home.png and /dev/null differ
diff --git a/docs/img/screenshots/result.png b/docs/img/screenshots/result.png
deleted file mode 100644
index 5fbf0992..00000000
Binary files a/docs/img/screenshots/result.png and /dev/null differ
diff --git a/docs/img/screenshots/scanning.png b/docs/img/screenshots/scanning.png
deleted file mode 100644
index bd380cfb..00000000
Binary files a/docs/img/screenshots/scanning.png and /dev/null differ
diff --git a/docs/img/transparent-logo.png b/docs/img/transparent-logo.png
deleted file mode 100644
index a8083967..00000000
Binary files a/docs/img/transparent-logo.png and /dev/null differ
diff --git a/docs/it/contributing.md b/docs/it/contributing.md
index 23638ddb..84e5a90e 100644
--- a/docs/it/contributing.md
+++ b/docs/it/contributing.md
@@ -1,36 +1,47 @@
-# CONTRIBUTO
+# Contributing
-## Migliora il Codebase
+## Code Contributions
-Come sviluppatore che cerca di amplificare la funzionalità di Raspirus, i tuoi contributi sono preziosi. Si prega di aderire alle seguenti linee guida:
+We welcome contributions! Before starting, please:
-- **Controllare i problemi esistenti:** Prima di fare immersioni in tuffo, perusare i problemi esistenti per evitare di creare duplicati. Se nessuno esiste, sentitevi liberi di aprirne uno nuovo.
+- **Check existing issues** to avoid duplicates.
+- **Follow documentation & coding standards.**
+- **Write tests** when applicable.
-- **La documentazione è la chiave:** Assicurati sempre che il tuo codice sia ben documentato. Ricordati di adattare i test per mantenere l'integrità del codice.
+🔗 **[Read the Code of Conduct](https://github.com/Raspirus/docs/blob/main/CODE_OF_CONDUCT.md)**
-- [Leggi il codice di condotta](https://github.com/Raspirus/docs/blob/main/CODE_OF_CONDUCT.md)
+## Documentation Contributions
-## Arricchisci la documentazione
+Our documentation is built with [MkDocs](https://www.mkdocs.org/user-guide/installation/) and enhanced with the [Material Theme](https://squidfunk.github.io/mkdocs-material/reference/).
-La documentazione di Raspirus è realizzata utilizzando Markdown e powered by [MkDocs](https://www.mkdocs.org/user-guide/installation/) e Python. Contribuire alla documentazione:
+To contribute:
-- **Segui la guida:** Per iniziare, imposta la documentazione sulla tua macchina locale seguendo la [guide](https://raspirus.github.io/docs/guides).
-- **Material Theme:** La nostra documentazione utilizza il Material Theme, che estende la funzionalità Markdown. Scopri di più su di esso [here](https://squidfunk.github.io/mkdocs-material/reference).
+1. Clone the [documentation repository](https://github.com/Raspirus/docs).
+2. Set up MkDocs locally.
+3. Submit a pull request with your improvements.
-## Traduzioni Drive
+## Translation Contributions
-La nostra documentazione è multilingue grazie ad [Crowdin](https://crowdin.com/project/raspirus), un servizio esterno intuitivo. Le traduzioni GUI sono gestite tramite i file JSON. Fare riferimento alla [guide](https://raspirus.github.io/docs/guides) per informazioni complete.
+Raspirus is multilingual! We use [Crowdin](https://crowdin.com/project/raspirus) for translations.
-## Infondere grafica e media
+- GUI translations use JSON files.
+- Documentation translations follow the [contribution guide](https://raspirus.github.io/docs/guides).
-Il repository per le opere d'arte (loghi, banner, ecc.) e supporti (powerpoint, articoli, grafici, ecc.) è ospitato separatamente su [questo repository](https://github.com/Raspirus/media). Sentitevi liberi di contribuire e rafforzare la nostra presenza visiva. Si noti che l'attuale logo e banner sono stati generati da IA a causa della mancanza di competenze artistiche.
+## Artwork & Media
-## Fornisci Feedback
+We maintain a separate [media repository](https://github.com/Raspirus/media) for:
-Al di là dei suddetti contributi, esistono altri modi efficaci per coinvolgersi:
+- Logos, banners, and promotional images.
+- PowerPoints, articles, and infographics.
-- **Unisciti a Discord:** Coinvolgi la nostra comunità sul [server Discord](https://discord.gg/Vx7fW9PA8B) per condividere preziosi feedback e idee.
-- **Considera la donazione:** Se trovi valore in Raspirus, considera [donating](https://github.com/sponsors/Raspirus) per supportare lo sviluppo in corso.
-- **Diffondi la Parola:** Un modo semplice ma efficace per contribuire è scaricare Raspirus e presentarlo agli amici.
+Feel free to contribute and improve Raspirus’s visual presence!
-Grazie per la vostra dedizione alla crescita e al miglioramento di Raspirus. Il vostro coinvolgimento è una pietra angolare del nostro successo.
+## Community & Feedback
+
+Join the discussion and help shape Raspirus:
+
+- 💬 **[Join our Discord](https://discord.gg/Vx7fW9PA8B)**
+- 💰 **[Consider sponsoring Raspirus](https://github.com/sponsors/Raspirus)**
+- 🌍 **Spread the word!**
+
+Thank you for your support and contributions! 🚀
\ No newline at end of file
diff --git a/docs/it/developers.md b/docs/it/developers.md
index 613bbce9..dfc09fe5 100644
--- a/docs/it/developers.md
+++ b/docs/it/developers.md
@@ -1,117 +1,135 @@
-# SVILUPPI
-
-## Navigare nell'Architettura
-
-```mermaid
-grafico LR
- A[Start] --> B{Posizione di scansione specificata? ;
- B --> Sì C[Start scan];
- C --> Start Loop D[File trovato];
- D --> E[Crea Hash];
- E --> F[Confronta Hash];
- F --> G{Hash trovato in DB? ;
- G --> Sì H[Contrassegna come malware];
- G --> No I[Contrassegna come sicuro];
- H & I --> J[Continue iteration];
- J --> K{Ultimo file? ;
- K --> Sì L[Stop scanner];
- L --> M[Display Results];
- K --> No N[Start again];
- N --> D;
- B --> No O[Stop]
-```
+# Developers
+
+Welcome to the Raspirus developer guide! This page outlines everything you need to contribute effectively, from setting up your environment to understanding the architecture and updating YARA rules.
+
+---
+
+## Setup
+
+To begin development, follow these steps:
+
+1. Clone the repository:
+ ```sh
+ git clone https://github.com/Raspirus/raspirus.git
+ cd raspirus
+ ```
+2. Install [Rust](https://www.rust-lang.org/tools/install).
+3. Install the Raspirus package:
+ ```sh
+ cargo install .
+ ```
+4. Start development:
+ ```sh
+ cargo run
+ ```
+5. Or build Raspirus:
+ ```sh
+ cargo build
+ ```
+
+### Troubleshooting Setup Issues
+If you encounter issues while building or running Raspirus:
+
+- Ensure Rust is installed correctly.
+- Verify that logs and config files are created properly.
+- Check for dependency conflicts and missing packages.
+
+---
+
+## Documentation
+
+Since Raspirus is written in Rust, you can generate developer documentation with:
+```sh
+cargo doc --no-deps --open
+```
+This will open the generated documentation in your browser.
+
+---
+
+## Architecture
+
+Raspirus follows a **frontend-backend** architecture, with both components written in Rust.
-Raspirus è strutturato in due componenti integrali: frontend e backend. Questi componenti, costruiti utilizzando linguaggi e quadri distinti, sono interconnessi tramite un framework di terze parti chiamato [Tauri](https://tauri.app/). Questo framework non solo facilita la comunicazione tra il frontend e il backend, ma ci permette anche di integrare le funzioni Rust nel frontend. Inoltre, Tauri consente la distribuzione di Raspirus su vari sistemi operativi.
-
-## Iniziare Il Tuo Viaggio Di Sviluppo
-
-\=== "Windows" Clona il repository
-2\. Installa [Tauri e Prerequisiti](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows)
-3\. Installa [npm](https://nodejs.org/en/download)
-4\. 1. Clone the repository
-2\. Install [Tauri and Prerequisites](https://tauri.app/v1/guides/getting-started/prerequisites/#setting-up-macos)
-3\. Install [npm](https://nodejs.org/en/download)
-4\. Install [Next.js](https://nextjs.org/docs/getting-started/installation#manual-installation) with `npm install next@latest react@latest react-dom@latest`
-5\. Install npm dependencies with: `npm i`
-6\. Start development with `cargo tauri dev`
-7\. or build Raspirus with `cargo tauri build` Installa dipendenze npm con: `npm i`
-6\. Inizia lo sviluppo con `cargo tauri dev`
-7\. o costruisci Raspirus con `cargo tauri build`
-
-\=== "Linux" Clona il Repository
-2\. Esegui `make install`
-3\. 1. Clone the Repository
-2\. Execute `make install`
-3\. Run the application with `raspirus`
-
-\=== "macOS" Clona il repository
-2\. Installa [Tauri e Prerequisiti](https://tauri.app/v1/guides/getting-started/prerequisites/#setting-up-macos)
-3\. Installa [npm](https://nodejs.org/en/download)
-4\. 1. Clone the repository
-2\. Install [Tauri and Prerequisites](https://tauri.app/v1/guides/getting-started/prerequisites#setting-up-windows)
-3\. Install [npm](https://nodejs.org/en/download)
-4\. Install [Next.js](https://nextjs.org/docs/getting-started/installation#manual-installation) with `npm install next@latest react@latest react-dom@latest`
-5\. Install npm dependencies with: `npm i`
-6\. Start development with `cargo tauri dev`
-7\. or build Raspirus with `cargo tauri build` Installa dipendenze npm con: `npm i`
-6\. Inizia lo sviluppo con `cargo tauri dev`
-7\. o costruisci Raspirus con `cargo tauri build`
-
-Se dovessi incontrare dei singhiozzi durante la tua esecuzione iniziale o costruire, assicurati di aver seguito diligentemente ogni passaggio. Confermare la creazione accurata di entrambi i log e file di configurazione.
-
-## Esplorare il Backend
-
-```mermaid
-classDiagram
- Main <|-- DBOps
- Main <|-- Configs
- Main <|-- FileLogs
- Main <|-- Scanner
- Main: +Config config_file
-
- class DBOps {
- +Connection db_conn
- +String db_file
- +TauriWindow t_win
- +new()
- +update_db()
- +hash_exists()
- }
-
- class Configs {
- +Data data
- +new()
- +save()
- +load()
- }
-
- class FileLogs {
- +File file
- +log()
- +create_file()
- }
-
- class Scanner {
- +String scan_loc
- +DbOps db_ops
- +Vec malware_list
- +search_files()
- +create_hash()
- +get_folder_size()
- }
+### Frontend
+
+- Uses **iced-rs** for GUI rendering.
+- Prioritizes user experience—ideally, users should never need to open the settings page.
+- Designed for **touch support**, minimizing keyboard input.
+- Plug-and-play: Can be replaced with another frontend if needed.
+- Simple structure, similar to a website with just a few pages.
+
+### Backend
+
+- **Multi-threaded** for efficient scanning.
+- Handles scanning, rule processing, and settings management.
+- Implements **YARA rules** for malware detection.
+- Well-documented functions—if in doubt, check the code directly.
+- Despite its complexity, it becomes easier to navigate once you start working with it.
+
+---
+
+## Configuration
+
+The configuration file is stored in the default system configuration folder:
+
+```json
+{
+ "config_version": "6",
+ "rules_version": "v1.1.2",
+ "min_matches": 0,
+ "max_matches": 20,
+ "max_threads": 12,
+ "logging_is_active": true,
+ "mirror": "https://api.github.com/repos/Raspirus/yara-rules/releases/latest",
+ "language": "en",
+ "dark_mode": true
+}
```
-Il backend, un cog essenziale nella macchina Raspirus, è meticolosamente realizzato in Rust per prestazioni superiori. Il file primario ospita funzioni accessibili dal frontend, che devono produrre risultati compatibili con JSon. Per una ripartizione dettagliata, fare riferimento al grafico sopra che delinea la disposizione modulare del backend.
+### Key Fields
+
+- `config_version`: Determines if an older config needs to be overwritten.
+- `rules_version`: Tracks the last downloaded YARA rules version.
+- `min_matches`: Minimum number of rule matches required to flag a file.
+- `max_matches`: Maximum rule matches before stopping further checks.
+- `max_threads`: Number of CPU threads used for scanning.
+- `logging_is_active`: Enables/disables logging (useful when storage is limited).
+- `mirror`: API endpoint for fetching rule updates.
+- `language`: Current language (supports `fr`, `en`, `it`, `de`).
+- `dark_mode`: Toggles the application’s dark mode.
+
+---
+
+## Mirrors
+
+The `mirror` setting in the config file should point to a Git API. Custom mirrors must provide JSON with the following structure:
+
+```json
+{
+ "tag_name": "v1.1",
+ "zipball_url": "http://example.com/download.zip"
+}
+```
+
+- `tag_name`: Specifies the version for update checks.
+- `zipball_url`: Direct link to the `.zip` archive containing YARA rules.
+
+---
-## Scompattare Frontend
+## Updater
-
+Raspirus has a **built-from-scratch updater** that:
-Il nostro frontend, sviluppato con JavaScript tramite il framework Next.js, sottolinea la facilità d'uso e la funzionalità. Composto da componenti e pagine, rispecchia la semplicità e la robustezza di Next.js. Fare riferimento al grafico qui sopra illustrato per una rappresentazione visiva approssimativa dell'architettura del frontend.
+1. Checks the latest available version using the configured mirror.
+2. Downloads the `.zip` archive to cache.
+3. Compiles all `.yar` files into a `.yarac` (compiled YARA rules).
+4. Saves the compiled rules in:
+ - **Linux/macOS**: `~/.local/share/raspirus`
+ - **Windows**: `%appdata%\Roaming\Raspirus\Data`
+ - **macOS (App Bundle)**: `/Applications/Raspirus/data`
-## Valutazione Della Copertura Dei Test
+### Release Archive Structure
-- I test di backend, scritti in Rust, possono essere eseguiti tramite il comando `cargo test`. Accedi a questi test nella [directory test](https://github.com/Raspirus/Raspirus/tree/main/src-tauri%2Fsrc%2Ftest). Controlla la copertura del test su [Codecov](https://app.codecov.io/gh/Raspirus/Raspirus).
-- I test Frontend, creati con Selenium, sono attualmente in fase di sviluppo.
+The update `.zip` should contain **uncompiled YARA `.yar` files**. The folder structure inside the archive does not matter, as files are added recursively.
-Grazie per il vostro interesse a contribuire allo sviluppo di Raspirus. La vostra esperienza alimenta i nostri progressi.
+📌 **Windows Users:** If Windows Defender interferes with compiled YARA rules, an optional script can disable Defender scanning. See [this script](https://github.com/Raspirus/yara-rules/blob/main/scripts/windows.ps1).
diff --git a/docs/it/faq.md b/docs/it/faq.md
index 00fee430..b28add4e 100644
--- a/docs/it/faq.md
+++ b/docs/it/faq.md
@@ -1,33 +1,99 @@
+# FAQ
+
+Below are some frequently asked questions about Raspirus. Click on any question to expand the answer.
+
+## General
+
+??? question "Where does the Raspirus logo come from?"
+ The Raspirus logo features a red monster named **Stuart**, designed to represent a virus-eating creature. The logo was generated using [DALL-E](https://openai.com/product/dall-e-2), with additional image editing and merging.
+
+ Stuart is a friendly monster—except when he's hungry for viruses. You can find additional media and assets in the [dedicated repository](https://github.com/Raspirus/media). Feel free to use these images for your own artwork and share them in the [discussion boards](https://github.com/orgs/Raspirus/discussions).
+
+??? question "Can I use Raspirus offline?"
+ Yes! Raspirus works offline except for updates. The YARA rules database is built locally, and an internet connection is only needed when fetching the latest rules from our GitHub repository.
+
+## Installation & Compatibility
+
+??? question "What are the minimum system requirements?"
+ Raspirus is lightweight and works on most systems, including low-power devices like the Raspberry Pi 3B+. However, for the best experience, we recommend:
+
+ - **RAM:** ~1 GB
+ - **Storage:** ~200 MB
+ - **CPU:** Dual-core processor (higher performance results in faster scans)
+ - **Display:** Required for the GUI (no strict minimum size, but smaller screens may impact usability)
+
+??? question "Issue when installing Raspirus on Linux"
+ **Do not install or perform actions as the `sudo` user.** Always run commands as your main user and use `sudo` only when necessary.
+
+ Switching to the `sudo` user and performing the installation will **break** the setup.
+
+??? question "Why can't I select directories or files?"
+ To change the type of asset you want to scan, click the **orange icon** near the selection dropdown. You can choose between:
+
+ - **USB drives**
+ - **Folders**
+ - **Individual files**
+
+??? question "Which operating systems and architectures are supported?"
+ Raspirus supports multiple operating systems and CPU architectures:
+
+ - **Windows:** Windows 10 & 11 (x86_64)
+ - **Linux:** Debian-based distributions (Debian, Ubuntu, PopOS, Mint, etc.) (x86_64, ARM64)
+ - **macOS:** Intel & Apple Silicon (x86_64, aarch64)
+
+ Additionally, Raspirus is **unofficially supported** on:
+
+ - OpenSUSE (x86_64, ARM64)
+ - Arch-based Linux distributions (x86_64, ARM64)
+
+ **Experimental support:** RISC-V 64 on Linux.
+
+## Customization
+
+??? question "How do I add my own YARA rules?"
+ Raspirus fetches rules from the [yara-rules repository](https://github.com/Raspirus/yara-rules) and builds the database locally.
+
+ If you want to contribute new rules:
+ - Open an **issue** or submit a **pull request (PR)** on the [yara-rules repository](https://github.com/Raspirus/yara-rules).
+
+ If you prefer to use your own rules:
+ - Modify the configuration file to fetch rules from your own repository instead.
+
---
-comments: true
----
-# FAQ
+## Known Issues
+
+??? warning "Remote installation error: App not detecting a screen"
+ If you install Raspirus via remote access, you may see an error indicating the app **is not detecting a screen**.
+
+ This happens because the system doesn't register a screen when running the app from the CLI, even if one is physically connected.
-???+ question "App crashes when updating" On Windows, it has been observed that the app crashes when attempting to update the database. Siamo consapevoli di questo problema e ci stiamo adoperando attivamente per risolverlo. Il problema sorge perché la funzione di aggiornamento richiede privilegi amministrativi, che Windows non fornisce automaticamente. Per risolvere temporaneamente questo problema, è possibile eseguire l'applicazione con privilegi amministrativi. Fare clic con il tasto destro sull'app e selezionare "Esegui come amministratore" per avviarla con i privilegi necessari.
+??? warning "Dependency issues when installing Raspirus"
+ If you encounter dependency issues:
+ - Try using the **AppImage** version.
+ - If issues persist, consider **downgrading or upgrading your OS**.
+
+ Always report these issues on [Discord](https://discord.gg/raspirus) or [GitHub](https://github.com/Raspirus/raspirus/issues) so we can investigate further.
+
+---
-???+ domanda "Da dove viene il logo Raspirus?"
-Il logo dell'app Raspirus presenta un mostro rosso di nome Stuart, che è progettato per rappresentare una creatura che mangia virus. Il logo è stato generato utilizzando [DALL-E](https://openai.com/product/dall-e-2), insieme all'editing e alla fusione di immagini creative. Stuart è un mostro amichevole, tranne quando ha fame di virus. Puoi trovare ulteriori supporti e documenti nel [repository dedicato](https://github.com/Raspirus/media). Sentitevi liberi di utilizzare queste immagini per creare la vostra grafica e condividerle nelle [schede di discussione](https://github.com/orgs/Raspirus/discussioni).
+## Important GitHub Issues to Check
-???+ domanda "Il mio VScode setup mi sta dando problemi"
+Before reporting a problem, please check the following commonly referenced issues:
-````
-Il plugin Rust Analyzer in Visual Studio Code cerca un file `Cargo.toml` nella directory corrente o nella directory principale. Per risolvere questo problema, puoi aggiungere un'opzione alle impostazioni del plugin e specificare la posizione del tuo `Cargo. oml` file.
+??? note "Commonly Reported Issues"
+ - **[#852 - No armv7 (32-bit) support](https://github.com/Raspirus/raspirus/issues/852)**
+ - **[#891 - Missing fonts](https://github.com/Raspirus/raspirus/issues/891)**
+ - **[#902 - "Failed to open yar file" error](https://github.com/Raspirus/raspirus/issues/902)**
+ - **[#937 - ARM64 deb does not install on RaspiOS (Debian 12 Bookworm)](https://github.com/Raspirus/raspirus/issues/937)**
-Come menzionato nel [questo commento](https://github. om/rust-lang/rust-analyzer/issues/2649#issuecomment-691582605), è possibile aggiungere le seguenti righe alla fine delle impostazioni del plugin JSON. Successivamente, riavviare l'Analizzatore Rust affinché le modifiche abbiano effetto.
+This is not a complete list—just a selection of frequently reported issues. If you encounter an error, check the [GitHub issues](https://github.com/Raspirus/raspirus/issues) first to see if a solution already exists before requesting support.
-```json
-{
- "rust-analyzer. inkedProjects": [
- "/home/stuart/raspirus/raspirus/Cargo.toml"
- ]
-}
-```
-````
+## Contributing Fixes
-???+ question "Can't select directories/files" Unfortunately, as of [this issue](https://github.com/tauri-apps/tauri/issues/5405) with Tauri, we currently can't allow users to select both files and folders. Per passare dalla selezione di un singolo file o cartella, è necessario modificarlo nelle impostazioni di Raspirus. Qui troverete un interruttore per esso.
+We are happy to assist when possible, but our time is limited. If you find a solution to a problem, consider sharing it:
-???+ domanda "Cos'è la modalità offuscata?"
-Raspirus era originariamente destinato all'uso aziendale e quindi doveva essere rispettoso della privacy. Per garantire che, ha aggiunto la "modalità obfuscation", che nasconderà tutto, rilevare il malware più velocemente e solo visualizzare: "Malware trovato" o "Nessun malware trovato". È attivata per impostazione predefinita, quindi se vuoi saperne di più sulla tua scansione, probabilmente dovresti disattivarla. Puoi farlo nelle impostazioni.
+- If an **existing issue** covers your problem, add a comment with your fix.
+- If you discover a **new issue** and a workaround, open an issue and document the solution for others.
-???+ question "error: found a virtual manifest instead of a package manifest" If you get this error when performing `cargo install` or using the Makefile, please note that it's a [know issue](https://github.com/rust-lang/cargo/issues/7599). La soluzione è semplice, come spiegato sulla [this](https\://stackoverflow. om/a/76271890) Risposta allo stackoverflow, basta cambiare il comando per includere lo spazio di lavoro, come questo: `cargo install --path src-tauri/`
+Your contributions help improve Raspirus for everyone! 🚀
diff --git a/docs/it/guides.md b/docs/it/guides.md
deleted file mode 100644
index 85dc06d9..00000000
--- a/docs/it/guides.md
+++ /dev/null
@@ -1,88 +0,0 @@
-# Guide
-
-## Impostazione Della Documentazione Locale
-
-Impostare facilmente la documentazione sulla vostra macchina con questi semplici passi:
-
-1. Clone this repository by following the instructions on [GitHub](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository).
-
- ```bash
- git clone https://github.com/Raspirus/docs.git
- ```
-
-2. Navigate to the cloned directory and install the required dependencies.
-
- ```bash
- You can install the dependencies by running the following command: `pip install -r requirements.txt`.
- ```
-
-3. Avvia il progetto localmente:
- Inizia il tuo progetto locale eseguendo questo comando:
-
- ```bash
- servizio mkdocs
- ```
-
- Questo avvierà un server di sviluppo, che ti permetterà di accedere alla documentazione tramite [http://localhost:8000](http://localhost:8000) nel tuo browser web preferito.
-
-## Export to PDF
-
-If you would like to have an offline version of this documentation in PDF format, you can follow these step-by-step instructions:
-
-1. Segui il processo di configurazione descritto sopra.
-
-2. Install [mkdocs](https://www.mkdocs.org/user-guide/installation/) and execute the build command: `mkdocs build`.
-
-3. If everything goes smoothly, the resulting PDF file should be located in the `site/pdf` directory with the name `document.pdf`.
-
-Please be aware that the exported PDF may have some issues with images and iFrames, but the text should be readable and suitable for sharing offline. Tuttavia, il testo rimane leggibile e adatto per la condivisione offline.
-
-## Traduzioni
-
-Per le traduzioni di questa documentazione, visita [Crowdin](https://crowdin.com/project/raspirus), una piattaforma di collaborazione. Le traduzioni per le stringhe dell'interfaccia utente sono gestite attraverso i file JSON. Per contribuire, crea le tue traduzioni all'interno della [cartella locales](https://github.com/Raspirus/Raspirus/tree/main/public%2Flocales). Mantenere l'unicità delle chiavi quando si traduce dal file `en.json`.
-
-## Scanner Insights
-
-### Scansione Dei File Compressi
-
-!!! nota
-
-```
-Questa opzione non è ancora disponibile per il Raspberry Pi. Scopri perché nella [sezione FAQ](https://raspirus.github.io/docs/faq)
-```
-
-Mentre Raspirus predefinito per la scansione delle cartelle, è possibile modificare questo comportamento tramite la pagina delle impostazioni. Attivando un interruttore, è possibile eseguire la scansione di singoli file, inclusi quelli compressi. È importante notare che un solo file può essere scansionato alla volta.
-
-### Navigazione di registri e configurazioni
-
-In caso di eventi inaspettati o di crash improvvisi delle app, l'esame di registri e configurazioni può fornire approfondimenti. Individuare questi file nelle seguenti cartelle, in base al sistema operativo. Il [ProjectDirs crate](https://docs.rs/directories-next/latest/directories_next/struct.ProjectDirs.html) li memorizza nella posizione seguente:
-
-**File di configurazione**
-
-| Piattaforma | Valore | Esempio |
-| ----------- | ------------------------------------------------------------------------- | ------------------------------------------------------------- |
-| Linux | `$XDG_DATA_HOME`/`_project_path_` o `$HOME`/.local/share/`_project_path_` | /home/alice/.local/share/barapp |
-| macOS | `$HOME`/Library/Application Support/`_project_path_` | /Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App |
-| Finestre | `{FOLDERID_RoamingAppData}`\\`_project_path_`\data | C:\Users\Alice\AppData\Roaming\Foo Corp\Bar App\data |
-
-**File di registro:**
-
-| Piattaforma | Valore | Esempio |
-| ----------- | ------------------------------------------------------------------------- | ------------------------------------------------------------- |
-| Linux | `$XDG_DATA_HOME`/`_project_path_` o `$HOME`/.local/share/`_project_path_` | /home/alice/.local/share/barapp |
-| macOS | `$HOME`/Library/Application Support/`_project_path_` | /Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App |
-| Finestre | `{FOLDERID_LocalAppData}`\\`_project_path_`\data | C:\Users\Alice\AppData\Local\Foo Corp\Bar App\data |
-
-Assicurarsi di includere questi file durante la segnalazione di bug, in quanto aiutano notevolmente nella risoluzione dei problemi.
-
-## GitHub Integration
-
-### Arricchire il database delle firme
-
-COMANDO SUONO
-
-## Distribuzione Raspberry Pi
-
-Originariamente su misura per distribuzione Raspberry Pi standalone con funzionalità touchscreen (simile alla modalità chiosco), lo scopo primario di questo progetto era la scansione delle unità USB collegate. Mentre il campo di applicazione del progetto si è ampliato, questa caratteristica rimane intatta. Segui la [guida su Tauri](https://tauri.app/v1/guides/building/linux#manual-compilation) e, se riscontri qualche problema, assicurati di farci sapere.
-
-Grazie per aver scelto Raspirus come soluzione di protezione da malware. Queste guide complete garantiranno la vostra esperienza senza soluzione di continuità ed efficiente.
diff --git a/docs/it/index.md b/docs/it/index.md
index e2c52e22..a194aaf1 100644
--- a/docs/it/index.md
+++ b/docs/it/index.md
@@ -1,46 +1,80 @@
-# HOME
+# Home
-![Full banner logo](../img/banner_logo.png)
+
+
+
+
-## Introduzione
+## Introduction
-Raspirus: Potenziare La Tua Protezione Malware
+Raspirus is a lightweight, rules-based malware scanner designed for scanning files and directories. Originally developed to scan USB drives using a Raspberry Pi, it has since expanded to support local file and folder scanning on multiple platforms.
-Benvenuti nella documentazione ufficiale per Raspirus, il vostro leggero scanner di malware basato sulla firma. Originariamente progettato per eseguire la scansione di unità USB collegate utilizzando un Raspberry Pi, Raspirus si è evoluto in un versatile strumento in grado di scansionare anche file e cartelle locali. Alcune delle sue caratteristiche distintive includono:
+Raspirus utilizes YARA-based detection rules to identify potential threats, offering a flexible and privacy-conscious approach to malware scanning. It supports scanning compressed files, ensuring thorough analysis. The project is community-supported and operates without cost, relying on donations.
-- **Protezione senza costi:** Raspirus opera esclusivamente su donazioni, garantendo una protezione di prim'ordine senza alcun onere finanziario.
-- **Rilevamento firma su misura:** Il nostro approccio personalizzato basato sulla firma garantisce un'identificazione accurata del malware.
-- **Comprehensive File Scans:** Raspirus può eseguire in modo efficiente la scansione dei file compressi, garantendo che nessuna minaccia non venga rilevata.
-- **Privacy Prioritizzata:** Offrendo un'opzione per la privacy, Raspirus mantiene le tue informazioni personali al sicuro.
-- **Convenienza cross-piattaforma:** Goditi i vantaggi della protezione Raspirus su una varietà di sistemi operativi.
-- **Swift e Dependable:** Contare su Raspirus per un rilevamento rapido e affidabile di malware.
-- **Elegante interfaccia moderna:** Raspirus vanta una bellissima e intuitiva interfaccia utente: grazie alla sua semplicità di utilizzo.
+Designed for efficiency and ease of use, Raspirus provides a modern interface while maintaining fast and reliable scanning performance.
-## Per Iniziare
+## Getting Started
-### Per Utenti Regolari
+### For Regular Users
-Cominciare con Raspirus è una brezza. Seguire questi semplici passaggi:
+Getting started with Raspirus is a breeze. Follow these simple steps:
-1. Visita la nostra [website](https://raspirus.deno.dev) o vai alla [pagina di rilascio di GitHub](https://github.com/Raspirus/Raspirus/releases/latest).
-2. Scarica l'eseguibile che corrisponde al tuo sistema operativo.
+1. Visit our [website](https://raspirus.deno.dev) or head to the [GitHub release page](https://github.com/Raspirus/raspirus/releases/latest).
+2. Download the executable that matches your operating system.
-!!! nota
+**Alterantives:**
-```
-Se hai intenzione di utilizzare Raspirus sul Raspberry Pi come applicazione standalone, abbiamo una [guida dedicata](https://raspirus.github.io/docs/guides#Raspberry-Pi) per questo.
-```
+- [Snap Store (Linux)](https://snapcraft.io/raspirus/)
+- [Flathub (Linux)](https://flathub.org/apps/details/io.github.raspirus.raspirus)
+- [SourceForge](https://sourceforge.net/projects/raspirus/files/latest/download)
+- [Chocolatey (Windows)](https://community.chocolatey.org/packages/raspirus/)
-### Per Gli Sviluppatori
-Sei uno sviluppatore che cerca di impostare Raspirus? Ti abbiamo coperto. Scopri le nostre guide complete per vari sistemi operativi nella [sezione Sviluppatori](https://raspirus.github.io/docs/developers).
+### For Developers
-## Domande?
+Are you a developer looking to set up Raspirus? We've got you covered. Check out our comprehensive guides for various operating systems in the [Developers section](developers.md).
-Hai domande su Raspirus? Siamo qui per aiutare!
+## Questions?
-- Visita la nostra [sezione FAQ](https://raspirus.github.io/docs/faq) per le risposte alle query comuni.
-- Unisciti alla nostra fiorente comunità sul [server Discord](https://discord.gg/Vx7fW9PA8B) per entrare in contatto con altri utenti.
-- Se hai incontrato un bug, sfogliare i problemi di GitHub per vedere se è già segnalato.
+Got questions about Raspirus? We're here to help!
-Grazie per aver scelto Raspirus per le vostre esigenze di protezione malware. Insieme, stiamo rendendo il mondo digitale più sicuro per tutti.
+- Visit our [FAQ section](faq.md) for answers to common queries.
+- Join our thriving community on the [Discord server](https://discord.gg/Vx7fW9PA8B) to engage with fellow users.
+- If you've encountered a bug, browse the [GitHub issues](https://github.com/Raspirus/raspirus/issues) to see if it's already reported.
+
+Thank you for choosing Raspirus for your malware protection needs. Together, we're making the digital world safer for everyone.
+
+## Screenshots
+
+### Home page
+
+
+
+
+
+### Settings page
+
+
+
+
+
+
+### About page
+
+
+
+
+
+
+## Contact
+
+We'd love to hear from you! Depending on your needs, here are the best ways to get in touch:
+
+- Join our [Discord community](https://discord.gg/Vx7fW9PA8B) for general questions and discussions.
+- For private matters, feel free to [email us](mailto:raspirus.dev@gmail.com).
+- If you have bug reports, feature requests, or other code-related issues, please use our [GitHub Issues](https://github.com/Raspirus/raspirus) system or the dedicated channels on our Discord server.
+
+### Quick Links
+- :simple-discord: [Discord](https://discord.gg/Vx7fW9PA8B)
+- :simple-gmail: [Email](mailto:raspirus.dev@gmail.com)
+- :simple-github: [GitHub](https://github.com/Raspirus/raspirus)
\ No newline at end of file
diff --git a/docs/it/scanning.md b/docs/it/scanning.md
new file mode 100644
index 00000000..f830d26a
--- /dev/null
+++ b/docs/it/scanning.md
@@ -0,0 +1,29 @@
+# Scanning
+
+Scanning files for malware can be achieved through various methods, such as Yara Rules or sandboxing. Antivirus applications often scan the entire process tree of an executable to identify malware. However, Raspirus is designed differently. It is a lightweight, on-demand file scanner optimized for low-end devices like the Raspberry Pi.
+
+Raspirus now leverages the power of the `yara-x` crate and Yara rules for its malware detection. Instead of relying on file signatures, Raspirus uses a flexible and powerful rule-based approach, scanning files for patterns and characteristics that match known malware behaviors. Yara rules are stored in a dedicated repository [here](https://github.com/Raspirus/yara-rules), and these rules are regularly updated to ensure broader and more accurate malware detection.
+
+There are no restrictions on the type or size of files you can scan with Raspirus.
+
+## Disadvantages
+
+While the shift to Yara rules improves detection capabilities, there are still some limitations:
+
+1. **Rule Complexity**: Writing and maintaining Yara rules can be complex. Although the rules provide more flexibility than simple hash matching, they require constant updating to cover new and evolving malware.
+
+2. **False Positives**: Due to the pattern-based nature of Yara rules, there may still be cases where legitimate files are flagged as malware. However, the rules are designed to minimize these occurrences compared to a pure signature-based approach.
+
+## Advantages
+
+Raspirus, powered by Yara, offers several distinct advantages:
+
+1. **Improved Detection**: Yara rules enable Raspirus to detect malware more accurately, even if the malware has been altered slightly or does not have a matching hash in a database. This allows for a more robust defense against various malware types.
+
+2. **Efficiency**: Although Yara rules are more resource-intensive than signature matching, Raspirus remains optimized for low-resource devices like Raspberry Pi, providing fast and efficient scans without overwhelming system resources.
+
+3. **Offline Capability**: Once the Yara rule database is downloaded and updated, Raspirus continues to function offline, maintaining the convenience of offline scanning.
+
+Raspirus no longer uses pure signature matching due to its limitations in detecting modified or new malware. Instead, it provides a more comprehensive scanning solution while still remaining lightweight. However, like any security tool, it is not intended to replace a full-fledged antivirus application. Users should be cautious when scanning internal system files to minimize false positives.
+
+Raspirus is continually evolving, and we are actively working to improve its scanning accuracy and expand its Yara rule database.
diff --git a/docs/it/screenshots.md b/docs/it/screenshots.md
deleted file mode 100644
index 22352b02..00000000
--- a/docs/it/screenshots.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# SCREENSHOTS
-
-## Home
-
-![Screenshot of Home page](../img/screenshots/home.png)
-
-## Scansione
-
-![Screenshot del processo di scansione](../img/screenshots/scanning.png)
-
-## Risultato
-
-![Screenshot del risultato positivo](../img/screenshots/result.png)
-
-## Configurazione Raspberry Pi
-
-![Screenshot della Home page su Raspberry Pi](../img/screenshots/Rpihomesetup.jpg)
-
-![Screenshot of Raspberry Pi setup](../img/screenshots/Rpisetup.jpg)
diff --git a/docs/it/stars.md b/docs/it/stars.md
deleted file mode 100644
index 6ba890a6..00000000
--- a/docs/it/stars.md
+++ /dev/null
@@ -1,88 +0,0 @@
-# STELLE
-
-## Sponsor
-
-