Project Snapshot
Hands-on sandbox for exploring agentic workflows in FastAPI. The repo pairs streaming upload endpoints with a LangGraph agent that calls external tools, organized in a clean-architecture layout for learning and iteration.
Business Context
- Built to experiment with agentic programming best practices without the constraints of a production system.
- Demonstrates how to package FastAPI + LangChain/LangGraph patterns so teams can extend them into real apps.
- Highlights both agent reasoning flows and backend API ergonomics in one demo.
Core Capabilities
- Streaming uploads for PDF and binary files, plus small-file upload examples.
- LangGraph agent endpoint that invokes a Tavily search tool with a Gemini model.
- In-memory checkpointing using SQLite to preserve agent state.
- Config management handled with Pydantic Settings.
- Clean-architecture layout using adapters, domain, and entrypoints folders.
- Docker-based dev loop with auto-reload for rapid iteration.
Architecture Highlights
- Split into two FastAPI apps:
be1/for upload streaming experiments andlanggraph-demo/for agent workflows. - Docker Compose boots the LangGraph app and exposes interactive API docs on startup.
- Notes and scaffolding call out missing tests, persistence wiring, and auth to guide future extensions.
My Role
I assembled the demo, wired the streaming API endpoints and tool-calling LangGraph workflow, and documented the layout and local Docker workflow for fast iteration.
Tech Stack
Python · FastAPI · LangChain · LangGraph · SQLite · Docker · Pydantic
Explore the Code
- GitHub Repository: rommel-rodriguez/agentic-programming-demo