FileGuard is a Windows desktop security application that monitors folders for unauthorized file changes using SHA-256 hashing. The project demonstrates how file integrity monitoring works by creating a trusted baseline of files, scanning folders again later, and identifying whether files were added, modified, deleted, or left unchanged.
The application allows users to add folders, create a baseline snapshot, run manual scans, enable real-time file watching, and schedule automatic scans. When changes are detected, FileGuard surfaces alerts and stores scan history so users can review previous results and understand what changed over time.

The backend logic is handled inside the Electron main process, where the app performs recursive file scanning, SHA-256 hashing, baseline comparison, SQLite storage, scheduled scans, and real-time file-system watching. The React renderer focuses on the user interface, dashboard views, history pages, scan results, settings, and visual feedback.
The app uses Electron, React, Vite, CSS custom properties, better-sqlite3, chokidar, node-cron, Node.js crypto, and electron-builder for Windows packaging. It also includes a system tray mode, desktop notifications, exclusion patterns, and an NSIS installer for a more realistic desktop software experience.

Through this project, I improved my understanding of file integrity monitoring, cryptographic hashing, Electron architecture, IPC communication, SQLite persistence, background scanning, and secure desktop application design. I also practiced building a security-focused tool that feels closer to real defensive software used for monitoring important files and detecting unexpected changes.



