A web application for visualizing and understanding complex Angular codebases through interactive node-link diagrams.
- Create, view, edit, and delete nodes representing different types of classes and conditions
- Connect nodes with various relationship types (extends, uses, injects, conditions)
- Interactive diagram manipulation using React Flow
- Data persistence using SQLite database
- Component
- Service
- Widget (custom type)
- SDK (custom type)
- Other
- Condition (special type for logical conditions)
- Extends (class inheritance)
- Uses (general usage)
- Injects (Angular dependency injection)
- Condition (logical flow)
- Install dependencies:
npm install- Start the development server:
npm run dev- Navigate to the backend directory:
cd backend- Install dependencies:
npm install- Start the development server:
npm run dev-
Frontend:
- React with TypeScript
- Vite
- React Flow (for diagrams)
- Material-UI (for UI components)
-
Backend:
- Node.js with Express
- TypeScript
- SQLite (for data persistence)
The application is structured as follows:
-
/src- Frontend React application/components- React components/App.tsx- Main application component
-
/backend- Node.js backendserver.ts- Express server and API endpointsdatabase.ts- Database configuration and models