Streamlit app that extracts key geotechnical design parameters from text-based PDF reports and generates concise PDF and CSV summaries for rapid engineering review.
Built for engineers who want answers quickly without reading an entire report.
Extracts high-value information commonly needed for preliminary design and peer review:
• Project metadata including project name, location, client, report date, and file or job number • Allowable bearing capacity from tables or narrative text • Settlement-related tables when present • Groundwater depth and “not encountered” statements • Inventory of borings with detected depths and groundwater notes • Identifies pages likely containing graphical boring logs for manual review • Quality control flags for found versus not found parameters
All extracted values retain source page traceability.
Input • One geotechnical PDF report
Outputs • CSV file with extracted values, source page, and extraction method • Formatted PDF summary suitable for quick review or sharing
• Text-based PDFs only. No OCR. • Scanned or image-only reports are intentionally rejected • Table extraction is conservative to avoid false positives • Graphical boring logs are flagged but not interpreted • Scope is intentionally limited and not a full report parser
• Allowable bearing capacity • Friction angle • Unit weight • Groundwater depth
Basic plausibility checks are applied and flagged when values appear out of range.
Requires Python 3.9 or newer.
pip install streamlit PyMuPDF pdfplumber pandas reportlabIf you encounter a fitz import error:
pip uninstall fitz
pip install PyMuPDFstreamlit run geotech.pyOpen the local Streamlit URL printed in the terminal.
- Upload a PDF
- Review extracted data in the app tabs
- Export CSV and PDF summaries
Optional: enable or disable table extraction from the sidebar.
| Issue | Solution |
|---|---|
| Scanned PDF detected | Re-export as a text-based PDF or run OCR externally |
| Missing values | Not all reports include every parameter; some data exists only in figures or logs |
This tool assists with document review only. All extracted values must be verified against the stamped report before use in design.
Free to use and adapt for internal business, personal, or educational use. Not permitted for resale or inclusion in paid products.
Licensed under Creative Commons Attribution–NonCommercial 4.0 (CC BY-NC 4.0).
Found a bug or have a suggestion? Send feedback to contact@alexengineered.com
AlexEngineered
Built for civil engineers who value their time.