
A modern solution for organizing, analyzing, and retrieving building-related documents with AI-powered features
Web service available at: amos.b-iq.net
We aim to build a secure, multi-tenant backend that stores uploaded permits, certificates, and maintenance reports; applies AI-driven OCR and metadata extraction to classify and validate each document; and provides a web UI where users can query and filter their building records using plain language. By implementing and demonstrating a full workflow — from document upload to automatic processing and natural-language search on sample data — we will create the technical foundation for a production-ready system that significantly reduces the time and effort required to manage building documents.
Bit&Beam is an intelligent document management system designed specifically for building-related data. The system streamlines document workflows by providing automated classification, metadata extraction, and smart search capabilities, making it easier for construction professionals and building administrators to manage critical documentation.
- Store, organize, and manage building-related documents
- Maintain a structured database of various document types (permits, certificates, reports)
- Multi-tenancy: Groups only access their assigned data
- Automated document data extraction (metadata and text fields)
- Automated document categorization
- UI for classification & validation
- Natural language querying and intelligent search
- Frontend: Angular (TypeScript)
- Backend: C# + ASP.NET Core
- Database: PostgreSQL (with pgai)
- Search: Opensearch
- AI/Extraction: Ollama, Apache Tika
- Containerization: Docker
/BitAndBeam
│
├── backend/ # ASP.NET Core API (C#)
│ ├── BUILD.ING/ # Main backend source code and migrations
│ └── Dockerfile
│
├── frontend/ # Angular app (TypeScript)
│ ├── src/
│ ├── public/
│ └── Dockerfile
│
├── opensearch/ # Opensearch config/scripts
│ └── README.md
│
├── postgres/ # PostgreSQL init scripts, pgai setup
│ └── init.sql
│
├── tika/ # Apache Tika integration/config
│ └── README.md
│
├── ollama/ # Ollama AI integration/config
│ └── README.md
│
├── web/ # Static web content
│ ├── Dockerfile
│ └── index.html
│
├── Instructions/ # Project instructions and sprint docs
│
├── database/ # Database schema and diagrams
│ ├── database_diagram.dbml
│ └── schema.sql
│
├── docker-compose.yml # Orchestration for all services
├── docker-compose-prod.yml # Production orchestration
├── README.md # Project root readme
- Clone the repository
- Follow setup instructions in each service directory
- Use
docker compose up
inside BitAndBeam, to start all services in development mode - Use
docker compose -f docker-compose-prod.yml up
inside BitAndBeam, to start all services in production mode - Setup GitHub Secrets for PROJECT_SERVER_IP, SSH_USER, SSH_PRIVATE_KEY to trigger web service start by GitHub Actions on push to main
- Access web service at amos.b-iq.net after successful Github Actions workflow. Use port 5000 for backend, 8080 for frontend, 8000/docs for ollama. Postgres is not a web service, hence not accessible.
- Please see
CONTRIBUTING.md
(to be added)
MIT License