Calsens Backend

Bienvenidos a la documentación sobre el backend de Calsens. Este documento pretende recabar la información esencial para añadir elementos y editar páginas de la vista general de la página web de CalSens


¿Por donde empezar?

Para consultar directamente los tutoriales:

  1. Modelado de contenidos para entender como nutrir la página con los contenidos necesarios. (Productos, proyectos, miembros del equipo...)
  2. Modelado de vistas para entender como se poblarán estas páginas con los contenidos previamente creados
  3. Acceso, Usuarios y Roles para entender cómo crear usuarios y dar permisos en la plataforma

Para conceptos generales sobre la plataforma, seguir leyendo.


Introducción

Descripción general del proyecto

El fin último de este proyecto es dar la posibilidad al cliente (Cal-Sens) de añadir, eliminar y editar sus contenidos sin necesidad de recurrir a terceros.

Para ello, se ha desarrollado un Backend basado en Strapi, un "Headless CMS", o lo que es lo mismo, un gestor de contenidos independiente de la vista de la página web.

Objetivo del Backend

El cliente necesitaba una forma de gestionar sus contenidos de manera sencilla, similar a Wordpress.

Las principales razones por las que se optó por una alternativa a Wordpress (NextJS + Strapi) son, entre otras:

  1. Los componentes requeridos para la página eran muy complejos, y su implementación en WordPress demandaba modificaciones manuales y codificación personalizada, lo que aumentaba la dificultad y el tiempo de desarrollo.
  2. El proyecto requería un entorno de desarrollo más ligero que ofreciera al desarrollador mayor libertad para diseñar y organizar los elementos visuales, algo que WordPress no facilitaba de manera eficiente.
  3. El cliente necesitaba autonomía para actualizar su contenido sin depender del desarrollador. Aunque WordPress permite la adición de elementos en las vistas, la complejidad de los componentes (punto 1) hacía que muchos no fueran accesibles para un usuario promedio, lo que limitaba la agilidad y viabilidad de esta solución.
  4. Aunque un proyecto simple en WordPress es fácil de crear y desplegar, su mantenimiento se complica con el tiempo. El ecosistema web evoluciona rápidamente, y un sitio web creado en WordPress en 2019 puede volverse pesado y menos funcional en 2024, no cumpliendo con las necesidades técnicas actuales.
  5. Los plugins, que a menudo son esenciales para el funcionamiento básico del sitio web (como un formulario estándar), requieren un mantenimiento constante, lo que puede incrementar la carga de trabajo y complicar la estabilidad del proyecto. (Y además, muchos de estos plug-ins acaban siendo de pago)
  6. La arquitectura actual proporciona una mayor flexibilidad para escalar aplicaciones de manera horizontal, permitiendo un crecimiento más orgánico y eficiente. WordPress, aunque escalable, requiere optimizaciones adicionales y a veces puede ser más complejo de escalar de manera eficiente sin comprometer el rendimiento.

Con esta estructura, la vista principal de cada web está cargada de forma rápida en el "frontend" (vista de la web), que se encarga de solicitar el contenido a dibujar en cada llamada.

Pasted image 20240829155310.png