Skip to content

Project structure

Alexis Boitel edited this page Mar 24, 2026 · 4 revisions

GriffonAV/ │ ├── core/ # Core Antivirus Service (Daemon) │ ├── src/ # Rust source files for the core service │ │ ├── main.rs # Entry point for the core service │ │ ├── lib.rs # Library code │ │ ├── scanner/ # Virus scanning logic │ │ ├── monitor/ # System monitoring logic │ │ ├── updater/ # Update logic for virus definitions │ │ └── ... # Other core modules │ ├── Cargo.toml # Rust package configuration │ └── build.rs # Build script │ ├── gui/ # Tauri GUI Application │ ├── client/ # React Frontend │ │ ├── public/ # Static files │ │ ├── src/ # Source files │ │ │ ├── components/ # Reusable components │ │ │ ├── pages/ # Page components │ │ │ ├── hooks/ # Custom hooks │ │ │ ├── utils/ # Utility functions │ │ │ ├── App.js # Main App component │ │ │ └── index.js # Entry point │ │ ├── package.json # Frontend dependencies and scripts │ │ └── ... # Other frontend files │ └── src-tauri/ # Tauri and Rust Backend for GUI │ ├── src/ # Rust source files │ │ ├── main.rs # Entry point for Tauri app │ │ ├── lib.rs # Library code │ │ ├── api/ # API modules │ │ └── ... # Other GUI backend modules │ ├── build.rs # Build script │ ├── Cargo.toml # Rust package configuration │ └── tauri.conf.json # Tauri configuration │ ├── shared/ # Shared Code │ ├── src/ # Shared Rust code │ │ ├── models/ # Data models │ │ ├── utils/ # Utility functions │ │ └── ... # Other shared modules │ └── Cargo.toml # Rust package configuration │ ├── tests/ # Tests │ ├── core/ # Core service tests │ │ ├── unit/ # Unit tests │ │ ├── integration/ # Integration tests │ │ └── performance/ # Performance tests │ └── gui/ # GUI application tests │ ├── frontend/ # Frontend tests │ │ ├── unit/ # Unit tests │ │ ├── integration/ # Integration tests │ │ └── e2e/ # End-to-end tests │ └── backend/ # Backend tests │ ├── unit/ # Unit tests │ ├── integration/ # Integration tests │ └── performance/ # Performance tests │ ├── docs/ # Documentation │ ├── technical/ # Technical documentation │ ├── user_guides/ # User guides │ └── api_reference/ # API reference │ ├── build/ # Build output │ ├── core/ # Core service build output │ └── gui/ # GUI application build output │ ├── scripts/ # Build and deployment scripts │ ├── build.sh # Build script │ ├── deploy.sh # Deployment script │ └── ... # Other scripts │ ├── .gitignore # Git ignore rules ├── README.md # Project overview └── ... # Other project files

---------- Simplify for presentations ----------------

GriffonAV/ │ ├── Services │ ├── Core │ ├── gui │ ├── React Frontend files │ └── Tauri Backend/ │ ├── Shared Code │ └── Modules │ ├── Scanner │ ├── Monitor │ └── Updater │ ├── Tests │ ├── Core Service Tests │ └── GUI Application Tests │ ├── Documentation │ └── Build & Deployment

---------------------------------- PROBABLY MORE SOMETHING LIKE THIS --------------------------------

griffon/ ├── core/ # Pure Rust: the antivirus logic (like a lib or binary) │ ├── src/ │ ├── Cargo.toml │ └── ... ├── cli/ # Optional: Command-line wrapper for the core │ ├── src/ │ ├── Cargo.toml │ └── ... ├── daemon/ # Optional: Background scanning service │ ├── src/ │ ├── Cargo.toml │ └── ... ├── gui/ # Tauri + React GUI │ ├── src/ │ ├── vite.config.ts │ ├── tauri.conf.json │ └── ... ├── Cargo.toml # Workspace root ├── Cargo.lock

Clone this wiki locally