Skip to main content
CAT / Custom STATUS / In production — real client, contractor for telecommunications works with multi-country operations AUTO / n8n

Your projects on the map. Your documentation where it always was.

Django + n8n + Nextcloud. Each site geolocated, with its photo gallery, subfolders, files, and permissions — no OAuth, no file migration, no user fees.

SYS.06-PORTAL-DOCUMENTAL-OBRAS
Un portal web donde toda la documentación de tus obras vive junto al mapa — sin…
[ 07 Problems it solves

What you'll stop suffering from.

  • Dozens or hundreds of projects, each with its own Nextcloud/Dropbox/Drive folder, impossible to find without context
  • Technical documentation separated from the physical site — it's unclear what's located where
  • WhatsApp photos of the site that no one consolidates with the rest of the documentation
  • Confusing permissions: admin, visitor, ITO, end client — everyone sees the same thing or shares are set up manually
  • Multiple contractors/companies with their own folders and the same types of projects
  • No one knows which sites are up to date and which are behind without opening each folder
  • Final delivery docs to the client mixed with working documentation
[ 08 Product captures

8 detailed views.

Portal principal: sitios por empresa, subcarpetas con conteo de archivos, actividad reciente y Docs. Finales

Main portal: sites by company, subfolders with file counts, recent activity, and final Docs

Mapa con sitios coloreados por estado y empresa, filtros laterales, popup con detalle de obra

Map with sites colored by status and company, side filters, popup with project details

Galería de fotos de WhatsApp agrupadas por fecha + árbol de carpetas Nextcloud en vivo

WhatsApp photo gallery grouped by date + live Nextcloud folder tree

Arquitectura: usuarios → Django portal → n8n → Nextcloud, con flujo de datos detallado en 7 pasos

Architecture: users → Django portal → n8n → Nextcloud, with detailed data flow in 7 steps

Un portal web donde toda la documentación de tus obras vive junto al mapa — sin cambiar las carpetas de Nextcloud
Un portal web donde toda la documentación de tus obras vive junto al mapa — sin cambiar las carpetas de Nextcloud
Un portal web donde toda la documentación de tus obras vive junto al mapa — sin cambiar las carpetas de Nextcloud
Un portal web donde toda la documentación de tus obras vive junto al mapa — sin cambiar las carpetas de Nextcloud
/ 8
[ 10 Capabilities

Everything the product does.

Multi-Company Portal
  • Navigation by company/contractor — each with its own sites
  • Sidebar with site count by company
  • Switch company with 1 click
  • Configuration from Django admin (no redeploy needed)
Site View
  • Table of sites with code, name, contractor, ITO, status
  • Filters by status (assigned / in progress / completed)
  • Search by site code
  • Configurable technical progress flags (e.g., concrete pouring, mounted, energized)
Georeferenced Map
  • Leaflet + OpenStreetMap (no API keys, no costs)
  • Colored pins by status and by company
  • Automatic clustering at low zoom
  • Popup with site data + link to folder
  • Map filters synchronized with the table
Nextcloud Integration via N8N
  • n8n is the middleware — Django does not speak WebDAV directly
  • Workflow nc-tekon: list items from a path
  • Workflow nc-tekon-deep: recursive file count by subfolder
  • Nextcloud credentials encapsulated in n8n — not in Django settings
  • Versioned workflows in JSON within the repo
Postgres Cache
  • CacheStructure: folder structure by company
  • SiteCache: tree of subfolders by site with count
  • FinalProjectCache: tree of final docs
  • Configurable TTL, manual refresh from admin
  • Miss → n8n webhook → update cache → render
Roles Permissions
  • UserProfile with admin / visitor role
  • CompanyLink by company with link_admin and link_visitor
  • Each role receives a different Nextcloud share URL
  • No OAuth — resolved with public shares + password
  • Extendable to more roles (ITO, client, supervisor)
Final Docs
  • Unified delivery folder to the client (e.g., /20-PTI SP)
  • Separate view — does not mix with contractor docs
  • Tree with file count by final document
  • Direct link to Nextcloud by role
Photo Gallery
  • WhatsApp photos synced to Nextcloud appear as a gallery
  • Grouping by date
  • By site — useful for ITO and client
  • No storage duplication (thumbnail + link)
Activity Audit
  • Last update by folder (real mtime from Nextcloud)
  • Recent activity panel
  • Change detection
  • Visual badges by freshness (today / this week / overdue)
Internal Rest API
  • /docs/api/sites/ — list sites by company
  • /docs/api/folders/ — structure or with files
  • /docs/api/folders/files/ — subfolders with count
  • /docs/api/final/tree/ — tree of final docs
  • Consumable by own frontend or by other systems
[ 10 Stack

What it's built with.

Framework
Django 5.2 Django REST Framework (lightweight views)
Database
PostgreSQL 17 (prod) MariaDB 10.2+ (optional) SQLite (dev)
Css
Tailwind CSS v4.2 DaisyUI v5.5 django-browser-reload
Mapping
Leaflet OpenStreetMap tiles
Middleware Integration
n8n self-hosted (webhooks + Nextcloud node)
Document Storage
Nextcloud (via WebDAV through n8n)
Cache Storage
Postgres Tables — StructureCache, SiteCache, FinalProjectCache
Auth
Django auth UserProfile with role without external OAuth
Orchestration
Docker Compose (Dockerfile + Dockerfile.mariadb)
Web Server
Gunicorn Nginx reverse proxy Let's Encrypt
[ 06 Differentials

Why this and not something else.

  • vs. forcing users to use Nextcloud directly: a custom portal with project context, map, status — without requiring the user to navigate WebDAV
  • vs. SharePoint / document SaaS: no cost per user, no data lock-in — Nextcloud stays where it was
  • vs. Drive with manual permissions: roles automatically generate different URLs
  • vs. building directly with WebDAV from Django: n8n isolates credentials, adds retries, and keeps workflows versioned
  • vs. generic GIS apps: focused on documentation — each pin shows what's missing, what's been delivered, and who did it
  • vs. having nothing: the ITO no longer sends the site folder via WhatsApp — they send the site link in the portal
[ REF

Who is already using it.

C

Regional telecommunications contractor

Telecommunications infrastructure · Multi-country

Something like this for your business?

A 30-minute call to see if your case is a good fit — no strings attached, no pitch.