GitMap is your companion for making sense of unfamiliar codebases. Instead of digging through endless folders, you get a clear visual map that shows how files are connected, letting you see the bigger picture at a glance.
You can even ask natural language questions about any file, and the built-in AI agent will give you clear, contextual answers. Whenever something changes in your repository, GitMap keeps you in the loop with simple notifications, so you’re never caught off guard. On top of that, it uses machine learning to predict which parts of the code might be unstable, helping you spot risks early and focus your attention where it matters most.
Whether you’re onboarding to a new project or keeping track of your own, GitMap turns messy repos into something you can actually understand and trust.
View the live ER diagram here: Eraser Workspace
- Interactive Code Map : instantly see how files connect through imports and dependencies.
- Natural Language Q&A with AI Agent : ask plain-English questions about any file and explore the repo with contextual answers and guidance.
- Change Notifications : stay up to date with simple alerts whenever your repository changes.
- Code Stability Predictions : machine learning highlights risky or unstable areas of the code.
| Login screen | Register screen |
|---|---|
![]() |
![]() |
| Dashboard screen | My Repos screen |
|---|---|
![]() |
![]() |
| Map screen | Notifications screen |
|---|---|
![]() |
![]() |
| Map Generation |
|---|
![]() |
| AI Agent |
|---|
![]() |
| Machine Learning |
|---|
![]() |
| Services | Validation | Testing |
|---|---|---|
![]() |
![]() |
![]() |
All tests can be run inside Docker containers without installing extra tools locally: use docker compose run --rm backend python manage.py test -v 2 for backend (Django) tests and docker compose run --rm frontend npm test -- --watchAll=false for frontend (React) tests. The --rm flag ensures containers are removed after execution, keeping the environment clean. These same tests also run automatically in CI (GitHub Actions) on every push and pull request to the main and dev branches.
| Frontend Tests | Backend Tests |
|---|---|
![]() |
![]() |
Simple Inputs: The user just provides a GitHub repository URL.
Smart Processing: The system fetches code and commits, then the AI agent indexes and analyzes the repository.
Clear Outputs: The AI agent delivers easy-to-understand answers and insights based on the code.
| AI Agent Explanation |
|---|
![]() |
Our Random Forest model was trained on defect prediction data and evaluated on a held-out test set. The key metrics are:
Accuracy: 0.82 → The model correctly classifies ~82% of files overall.
Precision: 0.56 → When the model predicts a defect, it is correct about 56% of the time.
Recall: 0.23 → The model detects ~23% of actual defective files, meaning some are missed.
F1 Score: 0.32 → Balances precision and recall, showing moderate performance on defect detection.
These results indicate that the model is strong at identifying non-defective files, but recall for defective files is lower, a typical challenge in imbalanced datasets.
| Metrics Bar |
|---|
![]() |
| Confusion Matrix | ROC Curve |
|---|---|
![]() |
![]() |
This workflow automatically checks watched GitHub repositories on a schedule, retrieves the latest commit information, and compares it with the stored commit reference. If new commits are found, it updates the record and sends a notification to the user, ensuring users are always informed about changes in their repositories.
| Workflow |
|---|
![]() |
| POST Add a GitHub repository | GET code map data | POST Predict defects for repository files |
|---|---|---|
![]() |
![]() |
![]() |
I used Linear to stay organized and manage my workflow as a solo developer. Each task followed a clear cycle:
Create Ticket → Create Branch (Linear standard) → Make Commits (with task ID) → Push → Open Pull Request → Merge Pull Request
This kept my work structured and traceable from start to finish.
| Board |
|---|
![]() |

























