Project Overview
RepoRadar started as a way to move beyond a basic C# console assignment and build something closer to a real developer utility. The project uses object-oriented design, analyzer classes, interfaces, and report generation to inspect local repositories and summarize their readiness.
What It Checks
- Whether the project has a root README file
- Whether the project has a .gitignore file
- Whether the folder is a Git repository
- Whether the repository has uncommitted changes
- Whether TODO or FIXME comments appear in source files
- Whether unwanted files like .DS_Store are present
- Whether .env files are safely ignored and not tracked by Git
- How many files exist by extension
Sample Output
RepoRadar
Developer Repository Health Scanner
==================================
RepoRadar Audit Report
==================================
Project: /Users/peytonbell/PycharmProjects/cs_resume_website
Health Score: 100/100
File Summary
------------
.css: 5
.gitignore: 1
.html: 20
.js: 10
.md: 3
.py: 6
.sql: 1
Issues
------
No major issues found.
Markdown report saved to:
AuditReports/cs_resume_website-audit.md
Architecture
RepoRadar uses an analyzer-based structure. Each repository check is placed in its own analyzer class, and each analyzer implements the same interface. This keeps the main audit workflow simple while making the project easy to expand.
RepoRadar/
├── Analyzers/
│ ├── IProjectAnalyzer.cs
│ ├── ReadmeAnalyzer.cs
│ ├── GitIgnoreAnalyzer.cs
│ ├── GitStatusAnalyzer.cs
│ ├── TodoAnalyzer.cs
│ ├── SourceFileAnalyzer.cs
│ └── UnwantedFileAnalyzer.cs
├── Models/
│ ├── AuditIssue.cs
│ └── AuditReport.cs
├── Reporting/
│ ├── ConsoleReportWriter.cs
│ └── MarkdownReportWriter.cs
├── Services/
│ └── ProjectAuditService.cs
└── Program.cs
Skills Demonstrated
- C# console application development
- Object-oriented programming
- Interfaces and analyzer-based design
- Separation of concerns
- File system traversal
- Git process execution
- Markdown report generation
- Repository hygiene and security checks
Future Improvements
The current version is a working base implementation. Future versions may include JSON export, configurable rules, unit tests, build/test command detection, and a more detailed scoring system.