Skip to content

CENIA-DEV/mvps-cenia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

151 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CENIA MVPs - Monorepository

This monorepository contains two independent MVP projects developed by CENIA (Centro Nacional de Inteligencia Artificial):

  1. CORFO - Document processing and validation system
  2. Red Almacenes - Invoice management and processing platform

Repository Structure

mvps-cenia/
├── corfo/                      # CORFO MVP - Document processing with GCP APIs
│   ├── page.py                # Main Streamlit application
│   ├── requirements.txt       # Python dependencies
│   ├── Dockerfile            # Container configuration
│   ├── .streamlit/           # Streamlit configuration
│   └── README.md             # Detailed setup instructions
│
├── red-almacenes/             # Red Almacenes Frontend - Streamlit application
│   ├── app.py                # Main application entry point
│   ├── view/                 # Application views and pages
│   ├── requirements.txt      # Python dependencies
│   ├── docker-compose.yml    # Docker Compose configuration
│   ├── Dockerfile           # Container configuration
│   └── README.md            # Detailed setup instructions
│
└── red-almacenes-flask/       # Red Almacenes Backend - Flask API
    ├── app.py                # Flask application with OAuth
    ├── models/              # Database models (SQLite)
    ├── processors/          # Invoice processors (CCU, Koandina, PF)
    ├── utils/               # Utility functions (Document AI, image processing)
    ├── templates/           # HTML templates (admin, invoices, profit calculator)
    ├── static/              # Static assets (Tailwind CSS, JS, images)
    ├── requirements.txt     # Python dependencies
    ├── tailwind.config.js   # Tailwind CSS configuration
    └── README.md            # Detailed setup instructions

Projects Overview

CORFO - Document Processing System

A Streamlit-based application that integrates with Google Cloud Platform services to process, validate, and compare documents. Features include:

  • Document upload and storage (Google Cloud Storage)
  • Document AI processing for text extraction
  • Workflow execution for document validation and comparison
  • Interactive UI for document analysis

See detailed documentation →

Red Almacenes - Invoice Management Platform

A two-tier application for invoice management and processing:

Frontend (Streamlit):

  • Interactive invoice upload interface
  • Image preprocessing and cropping tools
  • Document visualization

Backend (Flask):

  • Google OAuth authentication with role-based access control
  • Google Document AI integration for invoice data extraction
  • Multi-processor support (CCU, Koandina, PF Alimentos)
  • Invoice scanning and automatic data extraction
  • Profit calculator with margin/markup calculations
  • User management with admin panel
  • SQLite database for users, sessions, and invoices
  • Responsive UI with Tailwind CSS

See frontend documentation → See backend documentation →

Getting Started

Each project can be run independently. Please refer to the individual README files for specific setup and installation instructions:

Prerequisites

All projects require:

  • Python 3.11+
  • Docker and Docker Compose (for containerized deployment)

Additional requirements vary by project:

  • CORFO: Google Cloud Platform account with enabled APIs
  • Red Almacenes: Google OAuth credentials, Google Document AI processor IDs

Security and Configuration

This repository uses template files for sensitive configuration. Before running any project:

  1. Copy the template files and fill in your credentials
  2. Never commit actual credentials to version control
  3. Ensure .env and secrets.toml files are in your .gitignore

See SECURITY.md for detailed security guidelines.

Technology Stack

  • Frontend Framework: Streamlit
  • Backend Framework: Flask
  • Cloud Services: Google Cloud Platform (Storage, Document AI, Workflows)
  • Authentication: Google OAuth 2.0 (via Authlib)
  • Database: SQLite (user management, sessions, invoices)
  • CSS Framework: Tailwind CSS
  • Image Processing: Pillow
  • Containerization: Docker, Docker Compose

Development

Each project includes:

  • Development and production configurations
  • Dockerfile for containerized deployment
  • Requirements.txt for dependency management
  • Configuration templates for secrets

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Support

For questions or issues, please open an issue in this repository.


Developed by CENIA - Centro Nacional de Inteligencia Artificial

About

Monorepository for MVPs developed at CENIA

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors