Inspiration
- Enterprise document workflows are often fragmented: upload → convert → split/merge → sign → protect across many tools, costing time and causing errors.
- Foxit PDF SDK provides powerful PDF capabilities that, combined with a modern web stack, can automate much of this pipeline.
- The hackathon is a chance to ship an end‑to‑end MVP quickly, validate the value, and shape the expansion roadmap.
What it does
- Document management: sign in, upload, store, list, delete.
- PDF operations (MVP): optimize/compress, extract text, split pages, password protect.
- REST API and React UI work together; files are stored in
uploads/and served statically so the frontend can access them. - Built to extend: e‑signatures, merge, Office → PDF conversion, search and tagging.
How we built it
- Backend: Node.js/Express, MongoDB Atlas, JWT, Multer; Foxit logic wrapped in a service layer and exposed via
/api/documentsroutes. - Frontend: React + React Router, Axios, Tailwind;
DocumentListcalls real GET/DELETE APIs with Authorization headers. - Static uploads: Express serves
/uploads, and we normalize file paths to read/write files safely. - Dev setup:
.env, scripts; local runtime: backend:5001, frontend:3000.
Challenges we ran into
- URL vs filesystem path mismatches when reading PDFs; fixed by normalizing
fileUrl(strip leading slash) and using safepath.join. - Wiring Multer + static serving so the frontend can access newly uploaded files.
- Keeping auth headers/CORS in sync; minor CRA script adjustments.
- Limited hackathon time for deeper Foxit integrations.
Accomplishments that we're proud of
- End‑to‑end upload flow, document CRUD, and key PDF actions (optimize, extract text, split, protect).
- The frontend
DocumentListconsumes real APIs and handles deletion smoothly; the codebase is clean and extendable. - Both servers run reliably; file paths are standardized and
/uploadsis served safely.
What we learned
- File safety (URL vs filesystem) is critical for document‑processing apps.
- Designing PDF jobs benefits from queues/progress tracking for scalability.
- Checklists and documentation help avoid last‑minute submission issues.
What's next for Docu Chain
- E‑signatures via Foxit SDK; merge and Office → PDF conversion.
- PDF viewer integration (react‑pdf/pdf.js) for in‑app preview.
- Search, filters, tagging; drag & drop upload; audit logs.
- Cloud demo deployment (FE/BE), test account, and quickstart guide.
- Performance & security: caching, job queues (Bull/Redis), rate limiting.
Credentials
U: demo@example.com P: 123456
Attentions
- I faced some problems with Foxit API, need support fix later.
Built With
- axios
- express.js
- foxit-pdf-sdk
- mongodb
- node.js
- react
- react-router
- tailwindcss


Log in or sign up for Devpost to join the conversation.