Notex is an AI-powered tool that converts handwritten notes, PDFs, and images into structured LaTeX documents. It leverages LLMs, computer vision (OCR), and LaTeX formatting corrections to provide a seamless workflow for generating high-quality, error-free LaTeX documents.
✅ Convert Handwritten Notes to LaTeX – Extracts mathematical expressions, text, and formatting.
✅ Handles PDFs & Images – Converts PDF pages and scanned images into LaTeX code.
✅ Error Handling & Auto-Fixing – Fixes LaTeX compilation issues automatically.
✅ Document Structure Detection – Recognizes sections, theorems, proofs, equations, exercises and more.
✅ OpenAI & Azure Integration – Uses LLMs for intelligent text extraction.
✅ Fast LaTeX Compilation – Generates PDFs with error correction.
Full Documentation: 📚 ReadTheDocs
The docs include installation guides, API reference, and examples.
pip install notex_aipoetry add notex_aigit clone https://github.com/pr1m8/notex.git
cd notex
poetry installfrom notex import Conversation
conv = Conversation(session_id="example", output_dir="output")
# Process a PDF
pdf_path = "input.pdf"
output_pdf = conv.process_pdf(pdf_path)
# Process an Image
image_path = "input.png"
latex_code = conv.process_images([image_path])final_pdf = conv.compile_latex_text(latex_code)Notex requires API keys for OpenAI/Azure integration.
Create a .env file:
AZURE_OPENAI_API_KEY="your-azure-key"
AZURE_URI="your-azure-endpoint"Or use a config.ini file:
[AZURE_OPENAI]
API_KEY="your-key"
URI="your-endpoint"Notex includes an API server to handle uploads.
FLASK_APP=notex.app poetry run flask run --host=0.0.0.0 --port=5001Use the API to upload files:
curl -X POST -F "file=@input.pdf" http://localhost:5001/uploadWant to contribute? Follow these steps:
git clone https://github.com/pr1m8/notex.git
cd notexpoetry installpytestThis project is licensed under the MIT License. See LICENSE for details.
Follow @pr1m8 on GitHub for updates and new features!
📢 Have ideas or feedback? Open an issue or start a discussion.
