A modern multi-language code analysis and visualization platform built with .NET 9 and React 19.
Knowledge Network provides intelligent code analysis and interactive graph visualization for multiple programming languages. It combines the power of compiler APIs (like Roslyn for C#) with advanced visualization techniques to help developers understand complex codebases.
- Backend: .NET 9 with clean architecture (Core, Infrastructure, Domains, API)
- Frontend: React 19 + TypeScript + Vite + Tailwind CSS + G6 visualization
- Visualization: AntV G6 for high-performance graph rendering
- Analysis: Direct compiler API integration for maximum accuracy
- .NET 9 SDK
- Node.js 18+
- Git
cd src/
dotnet build
dotnet run --project backend/KnowledgeNetwork.ApiAPI will be available at http://localhost:5000
cd src/frontend/
npm install
npm run devFrontend will be available at http://localhost:3000
KnowledgeNetwork/
├── src/ # All source code
│ ├── backend/ # .NET backend projects
│ │ ├── KnowledgeNetwork.Core/ # Domain abstractions
│ │ ├── KnowledgeNetwork.Infrastructure/ # Data access, caching
│ │ ├── KnowledgeNetwork.Domains.Code/ # Code analysis domain
│ │ └── KnowledgeNetwork.Api/ # ASP.NET Core API
│ ├── KnowledgeNetwork.sln # Solution file
│ └── frontend/ # React application
├── test-data/ # Test files and examples
├── global.json # .NET SDK configuration
└── README.md # This file
- ✅ Phase 0 Complete: Clean architecture foundation
- ✅ Backend: .NET 9 with layered architecture
- ✅ Frontend: React 19 + modern toolchain
- ✅ Build Pipeline: Automated build verification
- 🚧 Phase 1: C# language support (in progress)
- .NET 9 (latest)
- ASP.NET Core Web API
- Roslyn Compiler APIs
- Clean Architecture pattern
- React 19.1.1
- TypeScript 5.8.3
- Vite 7.1.2 (build tool)
- Tailwind CSS 4.1.12
- AntV G6 5.0.49 (visualization)
- Redux Toolkit 2.8.2
Both projects include automated build verification:
# Backend
cd src/
dotnet build
# Frontend
cd src/frontend/
npm run buildThe architecture supports multiple programming languages:
- Implement
ILanguageAnalyzer<TResult> - Create language-specific analysis result
- Add visualization layout engine
- Update orchestration layer
See LICENSE for details.
This project follows clean architecture principles and incremental development practices. See the codebase architecture for detailed implementation guidance.