DEV Community

Cover image for I built a VS Code extension that scans your code and draws your microservice architecture
Baris Ozgen
Baris Ozgen

Posted on

I built a VS Code extension that scans your code and draws your microservice architecture

Every codebase I joined had the same problem — nobody knew how the services actually connected. There was always a diagram somewhere in Confluence, but it was six months out of date and missing half the services.

So I built MeshGraph.

What is MeshGraph?

It's a free VS Code extension that scans your workspace, discovers all your services and their API endpoints, and lets you visualize everything on an interactive canvas — without leaving your editor.

How it works

1. Automatic scanning

Open any workspace and MeshGraph detects your projects and endpoints automatically. No config files, no setup. It supports:

  • .NET / ASP.NET Core, Java / Spring Boot, Go (Gin, Echo, Fiber, Chi), Node.js (Express, Fastify, NestJS), Python (FastAPI, Flask, Django), Rust (Actix, Axum, Rocket)
  • REST, gRPC, GraphQL, Kafka, RabbitMQ, WebSocket, SignalR

2. Visual canvas

Drag discovered services onto a React Flow canvas. Draw connections between endpoints to map how services communicate. Add notes to describe contracts or implementation details.

3. AI-powered code and docs generation

Select any AI model available in your VS Code (GitHub Copilot, etc.) and generate implementation code or technical documentation directly from your architecture diagram.

The AI understands context:

  • Scanned services → follows your existing patterns and conventions
  • New services you created on the canvas → generates clean production-ready code
  • External services → generates client interfaces and integration contracts

4. Save and share

Everything saves as a single .mgx file — your canvas layout, connections, AI output, and instructions. Drop it in your repo and your whole team has the architecture.

Privacy

MeshGraph runs 100% locally. No data leaves your machine. No signup. No telemetry. No external server.

Links


I'd love to hear what you think. What features would make this useful for your workflow?

Top comments (0)