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