-
Notifications
You must be signed in to change notification settings - Fork 0
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