An open API service indexing awesome lists of open source software.

https://github.com/langchain-ai/langgraph-fullstack-python


https://github.com/langchain-ai/langgraph-fullstack-python

Last synced: 6 months ago
JSON representation

Awesome Lists containing this project

README

          

# Full-Stack Python Chatbot with LangGraph

[![CI](https://github.com/langchain-ai/langgraph-fullstack-python/actions/workflows/unit-tests.yml/badge.svg)](https://github.com/langchain-ai/langgraph-fullstack-python/actions/workflows/unit-tests.yml)
[![Integration Tests](https://github.com/langchain-ai/langgraph-fullstack-python/actions/workflows/integration-tests.yml/badge.svg)](https://github.com/langchain-ai/langgraph-fullstack-python/actions/workflows/integration-tests.yml)
[![Open in - LangGraph Studio](https://img.shields.io/badge/Open_in-LangGraph_Studio-00324d.svg?logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4NS4zMzMiIGhlaWdodD0iODUuMzMzIiB2ZXJzaW9uPSIxLjAiIHZpZXdCb3g9IjAgMCA2NCA2NCI+PHBhdGggZD0iTTEzIDcuOGMtNi4zIDMuMS03LjEgNi4zLTYuOCAyNS43LjQgMjQuNi4zIDI0LjUgMjUuOSAyNC41QzU3LjUgNTggNTggNTcuNSA1OCAzMi4zIDU4IDcuMyA1Ni43IDYgMzIgNmMtMTIuOCAwLTE2LjEuMy0xOSAxLjhtMzcuNiAxNi42YzIuOCAyLjggMy40IDQuMiAzLjQgNy42cy0uNiA0LjgtMy40IDcuNkw0Ny4yIDQzSDE2LjhsLTMuNC0zLjRjLTQuOC00LjgtNC44LTEwLjQgMC0xNS4ybDMuNC0zLjRoMzAuNHoiLz48cGF0aCBkPSJNMTguOSAyNS42Yy0xLjEgMS4zLTEgMS43LjQgMi41LjkuNiAxLjcgMS44IDEuNyAyLjcgMCAxIC43IDIuOCAxLjYgNC4xIDEuNCAxLjkgMS40IDIuNS4zIDMuMi0xIC42LS42LjkgMS40LjkgMS41IDAgMi43LS41IDIuNy0xIDAtLjYgMS4xLS44IDIuNi0uNGwyLjYuNy0xLjgtMi45Yy01LjktOS4zLTkuNC0xMi4zLTExLjUtOS44TTM5IDI2YzAgMS4xLS45IDIuNS0yIDMuMi0yLjQgMS41LTIuNiAzLjQtLjUgNC4yLjguMyAyIDEuNyAyLjUgMy4xLjYgMS41IDEuNCAyLjMgMiAyIDEuNS0uOSAxLjItMy41LS40LTMuNS0yLjEgMC0yLjgtMi44LS44LTMuMyAxLjYtLjQgMS42LS41IDAtLjYtMS4xLS4xLTEuNS0uNi0xLjItMS42LjctMS43IDMuMy0yLjEgMy41LS41LjEuNS4yIDEuNi4zIDIuMiAwIC43LjkgMS40IDEuOSAxLjYgMi4xLjQgMi4zLTIuMy4yLTMuMi0uOC0uMy0yLTEuNy0yLjUtMy4xLTEuMS0zLTMtMy4zLTMtLjUiLz48L3N2Zz4=)](https://langgraph-studio.vercel.app/templates/open?githubUrl=https://github.com/langchain-ai/langgraph-fullstack-python)

This template demonstrates how to build a full-stack chatbot application using LangGraph's HTTP configuration capabilities. It showcases how to combine a React-style agent with a modern web UI, all hosted within a single LangGraph deployment.

## Key Features

- 🌐 **Single Deployment** - Host both your agent and UI in one LangGraph deployment
- 🎨 **Modern UI** - Beautiful chat interface built with FastHTML
- 🔄 **React-Style Agent** - Intelligent chatbot using LangGraph's React agent pattern
- 🛠️ **Easy Configuration** - Simple HTTP routing setup through `langgraph.json`
- ⚡ **Fast Development** - Rapid prototyping with FastHTML's server-side components

## How It Works

### HTTP Configuration

The magic happens in `langgraph.json`, where we configure both the agent and HTTP routes:

```json
{
"dependencies": ["."],
"graphs": {
"agent": "./src/react_agent/graph.py:graph"
},
"http": {
"app": "./src/react_agent/app.py:app"
}
}
```

This configuration:
1. Defines the agent graph in `graph.py`
2. Sets up HTTP routes through FastHTML in `app.py`

### FastHTML UI

The UI is built using FastHTML, a lightweight server-side component framework. Key features:

- Modern chat interface using DaisyUI components
- Real-time message updates
- Clean, responsive design

### LangGraph Agent

The chatbot uses LangGraph's React agent pattern, which:

- Processes messages through a Claude 3 model
- Maintains conversation state
- Can be easily extended with custom tools

## Getting Started

Install the dependencies:

```bash
pip install uv
uv sync --dev
```

Then run the local server:
```bash
uv run langgraph dev --no-browser
```

Visit `http://localhost:2024` to interact with your chatbot!

## Customization

### Modify the Agent

Edit `src/react_agent/graph.py` to:
- Change the system prompt
- Add custom tools
- Modify the agent's behavior

### Customize the UI

Edit `src/react_agent/app.py` to:
- Update the chat interface
- Add new components
- Modify styling

## Next Steps

- Add persistent storage for chat history
- Implement custom tools for your agent
- Enhance the UI with additional features
- Deploy to production using LangGraph Platform

For more examples and detailed documentation:
- [LangGraph Documentation](https://langchain-ai.github.io/langgraph)
- [FastHTML Documentation](https://fasthtml.readme.io)
- [DaisyUI Components](https://daisyui.com/components)