Web API for content extraction and analysis using GPT and vector search.
- Content extraction from URLs using Playwright
- Text analysis with OpenAI GPT-4
- Semantic search with ChromaDB and LangChain
- REST API with FastAPI
- Web UI with Bootstrap 5
- Comprehensive test coverage
- CI/CD with GitHub Actions
- Python 3.11+
- FastAPI + Pydantic
- OpenAI GPT-4
- ChromaDB + LangChain
- Playwright
- Bootstrap 5
- Jinja2 Templates
- Vanilla JavaScript
- Clone the repository:
git clone <repo> cd <project-dir>
- Configure environment:
cp .env.example .env
# Edit .env with your OpenAI API key- Build and run with Docker Compose:
docker-compose up --build
The API will be available at http://localhost:8000
Run the test suite in a Docker container:
# Run all tests
docker-compose run --rm app pytestsrc/
├── api/ # API routes
├── core/ # Core functionality
├── models/ # Data models
├── services/ # Business logic
├── web/ # Web interface
└── tests/ # Test suites
POST /api/content/process Content-Type: application/json { "url": "string" | "urls": ["string"] }
GET /api/search/content?query=string&limit=number
See API Documentation for complete reference.
MIT
- OpenAI for GPT models
- ChromaDB team
- FastAPI framework
- Playwright project