← Back to Projects (Page 3 - In-Build) SPRINT 4 ACTIVE BUILD
IN-BUILD SYSTEM ARCHITECTURE

UniJos Central Data Platform (AI Research Cloud)

Institutional academic research and dataset processing platform for the University of Jos. Allows students to upload survey datasets and project hypotheses, generating automated statistical tables (ANOVA, regression) and thesis Chapter 4 discussions via an integrated Gemini AI analytical engine.

THE INDUSTRY GAP University undergraduates and postgraduates spend months stuck on Chapter 4 (Data Analysis), paying external consultants up to ₦50,000 for buggy SPSS outputs that frequently fail oral thesis defense.
HOW EMMANUEL ARCHITECTS IT Engineered using React 18, Vite, TypeScript, and Google Gemini API services coupled with client-side statistical parsing to automate hypothesis testing and APA 7th edition table generation.
COMMERCIAL SIGNIFICANCE Reduces academic research analysis turnaround from 6 weeks to 5 minutes, ensuring statistically sound, defense-ready research chapters.

Active Milestone: Data Federation Ingestion Pipeline & DOI Registry

Target Framework: React 18 · TypeScript · FastAPI (Python) · PostgreSQL 16

Sprint Completion 72%

PostgreSQL Metadata Architecture

CREATE TABLE `research_datasets` ( `id` UUID PRIMARY KEY DEFAULT gen_random_uuid(), `doi_identifier` VARCHAR(64) UNIQUE NOT NULL, `faculty_id` VARCHAR(16) NOT NULL, `department` VARCHAR(64) NOT NULL, -- e.g. 'Department of Physics' `dataset_title` VARCHAR(255) NOT NULL, `file_manifest_s3` JSONB NOT NULL, `citation_count` INT DEFAULT 0, `peer_review_status` ENUM('SUBMITTED', 'VERIFIED', 'PUBLISHED'), `created_at` TIMESTAMPTZ DEFAULT NOW() ); CREATE INDEX idx_department_doi ON research_datasets (department, doi_identifier);
  • Automated JSONB validation for multi-dimensional experimental physics matrix payloads
  • Hierarchical department and faculty categorization matching University of Jos academic structure
  • Permanent CrossRef DOI resolution for all open-access publication records

Telemetry Ingestion Pipeline

@app.post("/api/v1/telemetry/ingest") async def ingest_sensor_matrix(payload: ExperimentalTelemetrySchema): # Verify faculty cryptographic signature is_valid = verify_academic_signature(payload.signature, payload.faculty_key) if not is_valid: raise HTTPException(status_code=403, detail="Unverified researcher certificate") job = await queue.enqueue( "process_experimental_matrix", dataset_id=payload.dataset_id, raw_matrix=payload.matrix_data ) return {"status": "INGESTED", "job_id": job.id}
  • Zero Data Corruption: Enforces SHA-256 hash checks on all research uploads before permanent archival
  • Asynchronous Analysis: Celery workers compute standard deviations, linear regressions, and error margins
  • Role-Based Access: Separate portals for Academic Staff, Examination Officers, and Postgraduate Fellows