-
Verify Python 3.8+ is installed
python3 --version
-
Install pip if not available
sudo apt-get install python3-pip
-
Install pandoc (required for PDF generation)
sudo apt-get update sudo apt-get install pandoc
-
Run setup script
chmod +x setup.sh ./setup.sh
-
Skip to "Running the Application"
-
Create virtual environment
python3 -m venv venv
-
Activate virtual environment
source venv/bin/activate -
Install Python dependencies
pip install -r requirements.txt
-
Review configuration options (optional)
cp .env.example .env
-
Edit
.envif needed (default settings work fine)
-
Ensure virtual environment is activated
source venv/bin/activate -
Start the Flask application
python app.py
-
Verify app is running
- Look for message:
Running on http://127.0.0.1:5000
- Look for message:
- Open web browser
- Navigate to: http://localhost:5000
- Verify UI loads properly (purple/blue gradient)
- Check that upload area is visible
-
Drag sample_notebook.ipynb to upload area
Sample file location: ./sample_notebook.ipynb -
Click "Convert to PDF" button
-
Wait for conversion to complete
-
Verify PDF downloads automatically
-
Check PDF opens and displays correctly
-
Test API endpoint directly
curl -X POST -F "file=@sample_notebook.ipynb" \ http://localhost:5000/api/convert -o test_output.pdf -
Verify PDF was created
ls -lh test_output.pdf
- Web interface loads without errors ✅
- Drag-and-drop area is visible ✅
- File upload works ✅
- Conversion completes successfully ✅
- PDF downloads correctly ✅
- Converted PDF opens properly ✅
- Read QUICK_START.md for quick reference
- Review README.md for detailed information
- Check SETUP.md for troubleshooting
If something doesn't work:
-
Virtual environment is activated?
source venv/bin/activate -
All dependencies installed?
pip install -r requirements.txt
-
Pandoc installed?
which pandoc
-
Port 5000 is available?
lsof -i :5000
-
No syntax errors in code?
python -m py_compile app.py
-
Flask running properly?
- Check console output for errors
- Verify Flask version:
pip show Flask
| Issue | Solution |
|---|---|
ModuleNotFoundError |
Run pip install -r requirements.txt |
pandoc not found |
Run sudo apt-get install pandoc |
Port 5000 in use |
Kill process: lsof -ti :5000 | xargs kill -9 |
Permission denied setup.sh |
Run chmod +x setup.sh first |
| Browser shows connection error | Ensure app.py is running |
- Start with sample_notebook.ipynb
- File should be max 50MB
- Only .ipynb files are supported
- Wait for progress bar to complete
- PDF should download automatically
deactivate- Customize the application (optional)
- Commit to git if needed
- Share with team/users
- Monitor usage and performance
- Plan future enhancements
- Change the port number in app.py
- Modify UI styling in templates/index.html
- Update max file size in app.py
- Add custom error messages
- Create custom PDF styling
-
Keep dependencies updated
pip install --upgrade -r requirements.txt
-
Monitor for security updates
-
Clean up temp files periodically
-
Review error logs
Once all checkboxes are complete, your Jupyter Notebook to PDF Converter is:
✅ Installed ✅ Configured ✅ Running ✅ Tested ✅ Ready for use!
Enjoy converting notebooks to PDFs! 📓➜📄