ECEnrique Chyrnia
Proyecto propio · Fundador y desarrollador

Fil-Grama

Plataforma de analytics de redes sociales para agencias — Instagram, Facebook y TikTok en un solo lugar

Fil-Grama es una herramienta que estoy construyendo para agencias de marketing: centraliza las métricas orgánicas de las cuentas de sus clientes en Instagram, Facebook y TikTok, guarda un historial propio día a día (las redes no exponen series históricas completas por API) y arma reportes por cliente y por red. Es mi proyecto propio, en camino a convertirse en SaaS.

Rol · Fundador y desarrollador — lo diseñé, construí y desplegué de punta a punta

Definí el modelo de datos y la arquitectura, implementé el backend y el frontend, hice las integraciones con TikTok y Meta, armé la infraestructura y hago los despliegues.

Java · Spring Bootbackend modular por dominio
React · TypeScriptfrontend con contrato generado
Vultr · CloudflareVPS backend · Pages frontend

El problema

Por qué existe Fil-Grama

Una agencia que gestiona redes de varios clientes necesita comparar rendimiento entre cuentas y en el tiempo, pero Instagram, Facebook y TikTok no ofrecen historiales largos por su cuenta: cada API expone una ventana limitada de datos. Sin una captura propia y constante, esa historia se pierde.

Fil-Grama resuelve eso con un job diario que consulta las cuentas conectadas de cada cliente y guarda snapshots de métricas (alcance, seguidores, interacciones, engagement) en su propia base de datos. Con esa historia arma dashboards por cliente, comparación entre cuentas y reportes en PDF listos para entregar.

Captura histórica propiaJob diario que guarda snapshots de métricas por cuenta, más allá de la ventana que da cada red.
Multi-cliente, multi-redCada cliente de la agencia con sus cuentas de Instagram, Facebook y TikTok en un mismo panel.
Reportes y comparaciónDashboards, comparación entre cuentas y reportes en PDF por cliente y por rango de fechas.

Arquitectura

Backend modular, contrato de API como fuente de verdad

Diseño e implementación propia

Backend en Java con Spring Boot, separado en módulos por dominio (auth, clientes, cuentas, OAuth, integración Meta, métricas, sincronización, reportes, media, storage). PostgreSQL como base de datos, con migraciones versionadas. El frontend en React consume el contrato de API con un cliente generado automáticamente, para que backend y frontend no se desincronicen.

Redes sociales TikTok API Meta Graph API Job diario sync de métricas y OAuth Backend Auth · Cuentas Métricas · Sync Reportes · Media módulos por dominio · Spring Boot Datos y archivos PostgreSQLmétricas · clientes Storage S3R2 en prod · MinIO en dev Cliente Frontend Reactdashboards · reportes Auth con JWT (access + refresh rotado) · servidor MCP embebido con tools de solo lectura sobre reportes Diagrama conceptual, simplificado. Refleja los módulos reales del backend sin exponer detalles de infraestructura.
Backend modular por dominioContrato de API generado (Orval)Job diario de sincronizaciónAuth JWT con refresh rotadoServidor MCP para reportesStorage S3-compatible
Java · Spring BootPostgreSQL · FlywayReact 19 · TypeScript · ViteTanStack Query · React Router

Integraciones

TikTok y Meta, con su estado real

Integraciones implementadas en modo sandbox; la aprobación de las APIs de métricas de Meta está en proceso. Cuento el estado tal cual está, sin inflar: esto es un producto en construcción.

TT

TikTok

Sandbox funcionando

OAuth funcionando de punta a punta con PKCE, refresh de token con rotación y flujo de conexión con QR de marca. Es la integración más madura del proyecto: la única probada completa, desde autorización hasta lectura de métricas. La API de publicación de contenido (postear desde la plataforma) requiere una auditoría aparte de TikTok, todavía no habilitada.

M

Meta (Instagram / Facebook)

App Review pendiente

La integración está implementada en código (OAuth, lectura de métricas), pero Meta exige App Review con Advanced Access y verificación de negocio antes de habilitarla con cuentas de clientes reales. Hoy funciona en modo Development, solo con cuentas propias de prueba, mientras avanza la aprobación.

Infraestructura y despliegue

Cómo está desplegado

Alquilé el servidor, hice las conexiones y desplegué las dos partes del sistema: backend en un VPS de Vultr, corriendo con Docker Compose detrás de Caddy como proxy y con PostgreSQL, y frontend en Cloudflare Pages, con despliegue automático en cada push a la rama principal.

Para desarrollo uso un túnel de Cloudflare hacia el backend local, lo que me permite probar contra un dominio real sin exponer la máquina de desarrollo. Por seguridad, esta página no incluye IPs, credenciales, tokens ni URLs internas de administración.

BackendVPS en Vultr · Docker Compose · Caddy como proxy inverso · PostgreSQL
FrontendCloudflare Pages · despliegue automático vía git push
Storage de archivosCloudflare R2 (S3-compatible) en producción, MinIO en desarrollo

Producto

Capturas reales de la plataforma funcionando

Estas son capturas de la app corriendo en producción, no mockups: dashboard por cliente, detalle de una publicación, comparación entre cuentas y el generador de reportes exportable a PDF.

Dashboard de cliente en Fil-Grama con métricas de alcance, interacciones, engagement y seguidores
Dashboard por cliente: alcance, interacciones, engagement y seguidores de las cuentas conectadas, con el historial armado por el job diario.
Detalle de una publicación de Instagram con su métrica de comentarios en el tiempo
Detalle de publicación: contenido real traído por la API de Instagram, con la evolución de una métrica en el tiempo.
Comparación de alcance y seguidores entre las cuentas conectadas de un cliente, en gráfico de barras
Comparar cuentas: alcance, seguidores, interacciones y engagement lado a lado, en tabla o en barras.
Generador de reporte automático por cliente con KPIs por red social, exportable a PDF o Markdown
Reporte automático por cliente: KPIs por red social con variación vs. período anterior, exportable a PDF o Markdown.

Capturas reales, tomadas sobre Oh My Bunny — mi propio emprendimiento, que uso como cuenta de prueba en producción mientras avanza la aprobación de Meta para clientes de terceros. Los números son bajos porque es una cuenta real recién conectada, no una demo con datos inflados.

Stack

Tecnologías del proyecto

Backend

JavaSpring BootAPIs RESTJWT

Datos

PostgreSQLFlywayModelado relacional

Frontend

React 19TypeScriptViteTanStack Query

Integraciones

OAuth 2.0 · PKCETikTok APIMeta Graph API

Infraestructura

Vultr VPSDocker ComposeCaddyCloudflare Pages · R2

IA

Servidor MCP embebidoTools de solo lectura sobre reportes

Estado actual

En desarrollo activo, camino a SaaS

Fil-Grama todavía no tiene clientes reales operando en producción: es un producto en construcción, con foco en dejar bien resuelta la base (arquitectura, integraciones, infraestructura) antes de sumar usuarios. El roadmap apunta a convertirlo en un SaaS multi-cliente, con la integración de Meta habilitada de punta a punta como próximo hito importante.

Backend y frontend desplegadosVPS en Vultr + Cloudflare Pages, funcionando de punta a punta.
TikTok integradoOAuth y lectura de métricas funcionando en sandbox.
Meta en revisiónApp Review y verificación de negocio en proceso ante Meta.
Camino a SaaSEvolucionar de herramienta interna a producto multi-tenant.
Reportes automáticosGeneración de reportes en PDF por cliente y por rango de fechas.
Publicación de contenidoPendiente de habilitar tras la auditoría de la API de TikTok.