Skip to content

Puntapié inicial para hacer una aplicación en backend-plus desde cero

License

Notifications You must be signed in to change notification settings

codenautas/puntapie-ejemplo

 
 

Repository files navigation

puntapie-ejemplo

Ejemplo de puntapié inicial para hacer una aplicación en backend-plus desde cero.

iniciar una aplicación nueva

Para mantener este módulo, actualizar versiones, mantener los tipos de ts ver las instrucciones de mantenimeiento

requisitos para arrancar

Tener instalado:

  1. git (para windows git-scm y TortoiseGit)
  2. PostgreSQL cualquier versión LST (16 como mínimo)
  3. nodejs cualquier versión LTS (20 como mínimo)
  4. Visual Studio Code

arrancar con la cáscara

Elegir un nombre para el sistema (por ejemplo "nueva app").

Si se va a usar el git como repositorio (github, gitlab o lo que sea), crear el repositorio y clonarlo en una carpeta. Pero no clonar puntapie-inicial. Si no generar una carpeta en blanco (o del repositorio que sea).

Bajar el puntapie-inicial (sin clonar ni hacer branch) en la carpeta del sistema nuevo.

code download zip

Cambiar todas las ocurrencias de puntapie inicial por nueva app, respetando los guiones y rayas (- ó _) y las mayúsculas y minúsculas (cómo dice en la sección reemplazos). Eso debe hacerse tanto dentro de los archivos como en los nombres de los mismos.

Copiar el archivo example-local-config.yaml en local-config.yaml y cambiar los parámetros necesarios (url, puertos, etc) .

personalizarla

Los elementos para personalizarla son:

  1. El ícono de desarrollo 🏗 que está en .vscode/settings.json "window-title" por cualquier otro UNICODE
  2. La licencia (la que viene predeterminada es MIT) en el package.json
  3. El nombre, versión y título de la aplicación en package.json y el README.MD
  4. La gráfica en las carpetas img y css dentro de src/unlogged y src/client
  5. Los usuarios inicials de prueba en install/usuarios.tab
  6. Hay que borrar las tablas de ejemplo (archivos y objetos cuyo nombre contiene la palabra ejemplo). Agregar las tablas necesarias del sistema en src prefijándolas con table-.
  7. Hay que corregir el menú
  8. Si no habrá página deslogueado:
    1. borrar noLoggedUrlPath: /pub del local-config
    2. borrar la funión addUnloggedServices
  9. Borrar los procedimientos de ejemplo y agregar los que se necesiten.

instalarla

npm install
npm start -- --dump-db

Eso generará dos archivos de dump para crear la base de datos vacía y para crear las tablas en postgres.

npm start

En el navegador ir a localhost:3000/nueva_app (o como se llame la aplicación). O a localhost:3000/nueva_app/admin para administrarla.

ejemplo

Al instalar se puede ver una aplicación de ejemplo que muestra noticias (con título, fecha, autor y uno o más vínculos), tiene dos tipos de usuarios, el administrador y los redactores. El administrador puede hacer lo que quiera con los datos. Los redactores pueden agregar y modificar noticias, y publicarlas. No pueden ver las noticias de otros redactores hasta que no estén publicadas.

Las tablas y procedimientos de ejemplo hay que borrarlo para empezar con la aplicación limpia. Simplemente hay que buscar la palabra ejemplo en el código fuente (y en los nombres de los archivos) para elimianarlo.

remplazos

Usando VSCode se pueden usar expresionres regulares (case sensitive) para busacar puntapie([-_]?)inicial y reemplazar por nueva$1app. Y luego Puntapie([-_]?)Inicial y reemplazar por Nueva$1App.

aprovechar los cambios en puntapie-inicial

Volviendo a las fuentes del fork

Puntapié Inicial es un proyecto que muestra cómo arrancar una aplicación backend-plus con la configuración típica. A veces puede cambiar algo en el "boilerplate" o en las inclusiones recomendadas. Para eso hay que sincronizar con puntapie-inicial.

Las instrucciones para sincronizar con un fork cualquiera pueden verse en:

documentación

Está en github

About

Puntapié inicial para hacer una aplicación en backend-plus desde cero

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 97.8%
  • Stylus 2.2%