12 / 25Education / Institutional

CITI

Visit the site

IT Engineers' Association

Sector
Institutional platform / professional body management
Client
Colegio de Ingenieros en Tecnologías de la Información — Oruro (CITI Oruro)
Role
Solutions Architect & Tech Lead
Year
2026
CITI — IT Engineers' Association

A professional body's digital ecosystem: a single GraphQL backend for web and mobile

The project

A multi-app ecosystem digitising the administration of an engineering professional body in Oruro, Bolivia: a single GraphQL backend consumed by an institutional site with an admin panel, a member portal and a mobile app for members. It rebuilds and unifies scattered legacy systems (an RNI lookup in Node and a dues register in Laravel 8) around one domain.

The Challenge

The body ran on scattered, previous-generation tools: a dues lookup by registration number, a Laravel 8 + AdminLTE system for receipts, and no self-service for members at all. The register, dues with late-fee calculation, dual-flow treasury, tribunals, academic records and certificates all had to be unified, migrating the legacy database (~322 members) without losing financial integrity or traceability.

What We Built

We designed a GraphQL-first backend in Laravel 13 + Lighthouse (34 Eloquent models, ~43 tables, 47 migrations) with federated Firebase identity and Spatie RBAC (7 roles / 20 permissions), consumed by a static Next.js 16 site with a self-managed blog and a Flutter app with a digital membership card and onboarding/census. QR payment of monthly dues uses a switchable Gateway pattern, currently stubbed and ready to plug into a banking provider.

  1. A single GraphQL backend for web + mobile
  2. Automatic late-fee calculation using historical rates
  3. Dual-flow treasury with soft voiding and an audit trail
  4. Certificates with public QR verification
  5. RBAC with 7 roles / 20 permissions and 92 Pest tests
  6. Data analysis of the S.I.B. Oruro 2026–2028 electoral register (Python)

Stack

Laravel 13Lighthouse GraphQL 6.67PHP 8.3MySQLSpatie PermissionNext.js 16React 19Tailwind 4BeerCSS (Material 3)Firebase Auth/FirestoreFirebase FunctionsTipTapFlutterDartRiverpodPython (pandas, matplotlib, reportlab)
Next project →PhysioLife

Have something similar in mind?

Tell us what you need: we look at it together and propose a way forward in writing, in English or Spanish.

[email protected]