1.0.0 • Published 10 months ago

imagina.productora v1.0.0

Weekly downloads
-
License
ISC
Repository
-
Last release
10 months ago

#Imagina Productora Imagina es una productora de entretenimiento que te brinda un servicio completamente personalizable para tus eventos, acompañándote en todas las fases de este proceso para que logres sentirte cómodo y festejes con tus seres queridos, te hacemos parte de la creación desde el principio y la base para lograrlo es tu imaginación.

##Proposito El proposito de este repositorio es crear el backend de la web de Imagina Productora.

##Documentación gráfica https://www.canva.com/design/DAFlvhene24/p48s8XZ5Bsd9u_RSijhsrw/edit?utm_content=DAFlvhene24&utm_campaign=designshare&utm_medium=link2&utm_source=sharebutton

##Requisitos Node.js: Tener instalado node.js. Puedes descargarlo desde el sitio web oficial de Node.js e instalar la versión adecuada para tu sistema operativo.

Dependencias del proyecto: El código proporcionado utiliza varias dependencias de paquetes de Node.js. Antes de ejecutar el proyecto, debes instalar estas dependencias. Para hacerlo, abre una terminal en la carpeta raíz del proyecto y ejecuta el siguiente comando: ###npm install

GIT: Tener instalado git.

##Despues de la instalar las dependencias Iniciar el servidor: inicia el servidor colocando este comando en la terminal de tu editor de codigo

npm start

Organización de las carpetas

  • bd: Se encuentran los archivos .mongodb.js donde se registraron los datos para la base de datos.
  • node_modules: Se guardan todos los módulos de los paquetes npm instalados.
  • src:
    • src/models/archivos.js: Almacena los esquemas y modelos de datos de la base de datos.
    • src/public: Almacena archivos estáticos que serán accesibles públicamente desde el lado del cliente. (ESTA CARPETA SE ENCUENTRA VACÍA POR AHORA).
    • src/routes/*.js: Define y organiza las rutas de la API en el servidor. Se crean archivos que contienen la lógica de enrutamiento para diferentes recursos o funcionalidades de la aplicación.
    • src/server/config.js: Esta carpeta contiene un archivo config.js que se encarga de configurar la ruta raíz que envía la respuesta ("API DE PRUEBA"), además de la configuración de archivos estáticos desde la carpeta public y el manejo de errores.
      • Importa módulos:
        • path: Proporciona utilidades para trabajar con rutas de archivos y directorios.
        • exphbs: Módulo de Express Handlebars, un motor de plantillas para Express.js.
        • express: Framework web de Node.js para crear aplicaciones y API.
        • morgan: Middleware para registrar las solicitudes HTTP en la consola.
        • multer: Middleware para manejar la carga de archivos en las solicitudes HTTP.
        • errorHandler: Middleware para manejar diversos errores en el servidor.

Estos módulos se importan para habilitar y utilizar las funcionalidades específicas que proporcionan, como el enrutamiento, el manejo de plantillas, el registro de solicitudes, el manejo de archivos y el manejo de errores, lo que ayuda a construir y configurar un servidor Express.js con las características necesarias para una aplicación backend. (Estos módulos se utilizarán durante el desarrollo).

  • database.js: Aquí se llama a la función require('dotenv').config() para cargar las variables de entorno desde el archivo .env y se define la función connectDatabase que se encarga de establecer la conexión a la base de datos MongoDB utilizando la cadena de conexión, y se exporta la función connectDatabase.
  • index.js: Es el archivo principal donde se realiza lo siguiente:
    • Se importan los módulos necesarios, como express, body-parser, swagger-ui-express y swagger-jsdoc.
    • Se importan los módulos de base de datos y configuración de rutas (Database y routes).
    • Se importan los archivos de rutas (servicios, clases, shows_clasicos, shows_especiales y testimonios).
    • Se define una ruta /doc-api que sirve la interfaz de Swagger y se configura con swaggerUI.serve y swaggerUI.setup.
    • Se configura Swagger mediante el objeto swaggerSpecs, que define la especificación OpenAPI y los servidores en los que se ejecuta la aplicación.
    • Se ex

##Ramas ###Ramas principales Branch main: Se utiliza para generar las versiones del software que se despliegan en producción.

Branch develop: Esta rama es la rama principal de desarrollo. Todo el desarrollo de nuevas funcionalidades y corrección de errores se realiza en esta rama. ##Ramas secundarias Branch feature: Se utiliza para desarrollar nuevas funcionalidades. Cada funcionalidad se desarrolla en una rama separada basada en develop. Una vez completada, la rama de funcionalidad se fusiona de nuevo en develop.

Branch release: Se utiliza para preparar una nueva versión del software para su despliegue en producción. Se crea a partir de develop y se utiliza para hacer las últimas correcciones y ajustes antes de lanzar la versión. #GUIA DE USO Se debera trabajar por ramas sin afectar a la rama principal. Todos los miembros tienen permiso para afectar la rama principal cuando cuando esten listos los cambios en las otras ramas.

#CONTACTO Y SOPORTE Mande un email al siguiente correo si tiene mas dudas sobre este proyecto rachel11072003@gmail.com

#LICENCIAS PRODUCTORA IMAGINA SAC ©

#ESTADO DEL PROYECTO El estado del proyecto se encuentra en proceso