Major Changes: - Implemented notebook-first architecture (multi-document collections) - Added user authentication and multi-tenancy - Created comprehensive database schema (7 tables) - Built complete notebook management system - Implemented notebook-level chat across multiple documents - Added podcast generation from notebooks - Implemented notebook sharing with permissions - Fixed MCP server crashes by bypassing for document processing - Added all enterprise features requested New Features: - User login/signup with bcrypt password hashing - Create/edit/delete notebooks - Upload multiple PDFs to notebooks - Add documents to existing notebooks - Chat across all documents in a notebook - Generate podcasts from entire notebooks - Share notebooks with other users - View shared notebooks - Persistent chat history per notebook - Document summaries, Q&A, and highlights Technical Improvements: - PostgreSQL database with SQLAlchemy ORM - Connection pooling and proper cleanup - Bypassed buggy MCP server for document processing - Direct LlamaCloud API calls for reliability - Proper CASCADE deletes - Session management - Error handling and logging Documentation: - ENTERPRISE_SETUP.md - Setup guide - IMPLEMENTATION_SUMMARY.md - Technical details - SIMPLIFIED_PLAN.md - Architecture overview - CURRENT_STATUS.md - Status and known issues - FINAL_README.md - User guide 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
40 lines
1 KiB
TOML
40 lines
1 KiB
TOML
[project]
|
|
name = "notebookllama"
|
|
version = "0.2.0.post1"
|
|
description = "An OSS and LlamaCloud-backed alternative to NotebookLM"
|
|
readme = "README.md"
|
|
requires-python = ">=3.13"
|
|
dependencies = [
|
|
"audioop-lts>=0.2.1",
|
|
"bcrypt>=4.0.1",
|
|
"elevenlabs>=2.5.0",
|
|
"fastmcp>=2.9.2",
|
|
"ffprobe>=0.5",
|
|
"llama-cloud>=0.1.29",
|
|
"llama-cloud-services>=0.6.38",
|
|
"llama-index-core>=0.12.44",
|
|
"llama-index-embeddings-openai>=0.3.1",
|
|
"llama-index-indices-managed-llama-cloud>=0.6.11",
|
|
"llama-index-llms-openai>=0.4.7",
|
|
"llama-index-observability-otel>=0.1.1",
|
|
"llama-index-tools-mcp>=0.2.5",
|
|
"llama-index-workflows>=1.0.1",
|
|
"mypy>=1.16.1",
|
|
"opentelemetry-exporter-otlp-proto-http>=1.34.1",
|
|
"plotly>=6.2.0",
|
|
"pre-commit>=4.2.0",
|
|
"psycopg2-binary>=2.9.10",
|
|
"pydub>=0.25.1",
|
|
"pytest>=8.4.1",
|
|
"pytest-asyncio>=1.0.0",
|
|
"python-dotenv>=1.1.1",
|
|
"pyvis>=0.3.2",
|
|
"sqlalchemy>=2.0.0",
|
|
"streamlit>=1.46.1"
|
|
]
|
|
|
|
[tool.mypy]
|
|
disable_error_code = ["import-not-found", "import-untyped"]
|
|
|
|
[tool.pytest.ini_options]
|
|
pythonpath = ["src"]
|