Seeking Feedback on My Flask-based PDF Processing Web App
Hello Dev Community! I'm a university student from Edinburgh who's built a PDF processing web application using Flask and Python. I'd love to get some feedback from fellow developers on both the user experience and code organization. What My App Does RevisePDF is a web application that helps users with various PDF tasks: Compressing PDFs to reduce file size Editing text content directly in PDFs Converting PDFs to other formats Using OCR to extract text from scanned documents Adding/removing page numbers And several other PDF manipulation features Technical Implementation The app is built with: Python/Flask backend PyMuPDF for PDF manipulation Tesseract for OCR functionality Supabase for authentication HTML/CSS/JavaScript frontend What I'm Struggling With As I've added more features, my code organisation has become increasingly difficult to maintain. I've structured it with each feature in separate modules, but I'm facing: Significant code duplication across modules Inconsistent error handling Difficulty maintaining a coherent structure as I add new features I've tried implementing Flask blueprints and application factories, but I'm not sure if I'm using them optimally for this type of application. What I'm Looking For I'd appreciate feedback on: User Experience: If you try the app, what feels intuitive and what doesn't? Any UX improvements you'd suggest? Code Organization: For Flask developers, how do you structure larger applications with multiple processing functions? Any patterns or approaches you'd recommend? Feature Suggestions: What PDF-related features would you find most useful that I might be missing? Try It Out You can check out the app at RevisePDF.com If you're interested in seeing parts of the codebase to provide more specific feedback on structure, I'd be happy to share relevant sections. Thanks in advance for any insights you can provide!

Hello Dev Community!
I'm a university student from Edinburgh who's built a PDF processing web application using Flask and Python. I'd love to get some feedback from fellow developers on both the user experience and code organization.
What My App Does
RevisePDF is a web application that helps users with various PDF tasks:
- Compressing PDFs to reduce file size
- Editing text content directly in PDFs
- Converting PDFs to other formats
- Using OCR to extract text from scanned documents
- Adding/removing page numbers
- And several other PDF manipulation features
Technical Implementation
The app is built with:
- Python/Flask backend
- PyMuPDF for PDF manipulation
- Tesseract for OCR functionality
- Supabase for authentication
- HTML/CSS/JavaScript frontend
What I'm Struggling With
As I've added more features, my code organisation has become increasingly difficult to maintain. I've structured it with each feature in separate modules, but I'm facing:
- Significant code duplication across modules
- Inconsistent error handling
- Difficulty maintaining a coherent structure as I add new features
I've tried implementing Flask blueprints and application factories, but I'm not sure if I'm using them optimally for this type of application.
What I'm Looking For
I'd appreciate feedback on:
User Experience: If you try the app, what feels intuitive and what doesn't? Any UX improvements you'd suggest?
Code Organization: For Flask developers, how do you structure larger applications with multiple processing functions? Any patterns or approaches you'd recommend?
Feature Suggestions: What PDF-related features would you find most useful that I might be missing?
Try It Out
You can check out the app at RevisePDF.com
If you're interested in seeing parts of the codebase to provide more specific feedback on structure, I'd be happy to share relevant sections.
Thanks in advance for any insights you can provide!