An intelligent backend system that scans any GitHub repository and automatically extracts API endpoints along with their request/response schemas.
-
🔍 Automatic API Detection
- Scans repository files to find REST endpoints
-
🧠 AI-powered Schema Extraction
- Uses LLM to infer request/response schemas from code
-
⚡ Concurrent Processing
- Multi-threaded schema generation for performance
-
🧹 Duplicate Removal
- Ensures unique API endpoints
-
📂 Multi-language Ready (Extensible)
- Designed to support Java, Node.js, Go, etc.
GitHub Repo
↓
Clone Service
↓
File Scanner
↓
Endpoint Extractor
↓
Code Snippet Extractor
↓
LLM (Schema Generator)
↓
Structured Output
- Java (Spring Boot)
- LangChain4j / LLM Integration
- Multithreading (ExecutorService)
- File System Scanning
- REST API Parsing
service/
├── ExtractionService.java
├── SchemaGeneratorService.java
├── CodeSnippetExtractorService.java
├── EndpointExtractorService.java
├── RepoScannerService.java
└── GitService.java
agent/
├── RepoAgent.java
└── RepoTools.java
model/
├── ApiEndpoint.java
└── RepositoryStructure.java
- Provide a GitHub repository URL
- System clones the repo
- Scans files to detect API endpoints
- Extracts relevant code snippets
- Uses AI to generate schema
- Returns structured API data
{
"method": "POST",
"path": "/jobPost",
"requestSchema": { ... },
"responseSchema": { ... }
}- Schema accuracy depends on code clarity
- Dynamic languages (Node.js) may require heuristics
- LLM output may need post-processing
git clone https://github.com/your-username/repo-name.git
cd repo-nameIf using Maven:
mvn clean installmvn spring-boot:runOR run directly from your IDE (IntelliJ / Eclipse)
http://localhost:8080POST http://localhost:8080/extract{
"repoUrl": "https://github.com/your-username/sample-repo"
}