⭐ al proyecto si te ha gustado
Tutorial »
Guía de Inicio
·
Reportar Error
·
Solicitar funcionalidad
Tabla de contenidos
- 🏎 Poder iniciar un proyecto rápidamente.
- ⚡️ Enfocar todo el tiempo y energía en desarrollar la librería.
- 👍 Forzar buenas prácticas.
- 🚀 Publicarla y compartirla.
Esta plantilla tiene pre-configuradas varias herramientas que te permitirán un desarrollo más rápido, robusto y de mayor calidad:
- babel - Javascrit a la última
- rollup - Compila tu librería para compartirla
- eslint - Encuentra y corrige errores en tu código
- eslint airbnb - Sigue una de las guías de estilo más populares
- prettier - Formatea tu código con las mejores prácticas
- commitizen - Estandariza tus mensajes Commit en Git
- husky - Mejora la calidad de tus commits automatizando tareas
- lint-staged - Ejecuta tus linters sobre los archivos que vas a comitear
- commitlint - Confirma que tus mensajes commit se ajustan a un estandar
- semantic-release - Gestión de versiones y publicación de paquetes totalmente automatizada
- jest - Potente framework para realizar test
- didor-docs - Documenta tu código con estilo rapidamente
- plantillas github - Plantillas para reportar errores, mejoras, pull request, licencias, ... en Github
- readme - Completa plantilla con las mejores prácticas
- VSCode Workspace - Espacio de trabajo preconfigurado para VSCode
-
Descarga el repositorio
git clone https://github.com/fvena/javascript-library-starter.git <NOMBRE_DE_TU_PROYECTO>
-
Instala las dependencias y configura el proyecto
cd <NOMBRE_DE_TU_PROYECTO> npm install
-
Comienza a desarrollar
Nota: Como verás se ejecuta un script
post-install
que configura tus datos el proyecto y te limpia git para que partas con un repositorio limpio.
Cuando utilices esta plantilla, trata de realizar las siguientes tareas para configurarla con los datos de tu proyecto.
- [] Modifica los campos nombre, descripción y autor del proyecto en el package.json
- [] Inicializa la versión del proyecto en el package.json con la
0.0.0-dev
. - [] Actualiza las rutas de tu repositorio, homepage y bugs de tu repositorio.
- [] Cambia el nombre del autor en el archivo LICENSE
- [] Sustituye este README.md por la plantilla en blanco README_TEMPLATE.md
- [] Elimina el archivo CHANGELOG.json
Disfruta :)
npm run dev
: Levanta una página de prueba en http://localhost:3000npm run dev
: Ejecuta nuestra librería con nodemonnpm run test
: Ejecuta los test una veznpm run test:watch
: Ejecuta los test y vigila los cambiosnpm run docs
: Levanta una página con la documentaciónnpm run build
: Compila la librería
La plantilla está preparada para publicar una nueva versión cada vez que modificas la rama master
de tu repositorio, ya sea subiendo los cambios directamente o haciendo un pull request
.
Mi consejo es que siempre trabajes en una rama dev
y cuando quieras lanzar una nueva versión hagas un pull-request
a la master directamente desde github. Es más, si quieres otro consejo, elimina tu rama master
local.
# Crea y salta a una rama dev
git checkout -b dev
# Elimina la rama master
git branch -D master
# Sube los cambios a tu rama dev
git push
Requisito previo: Necesitas tener cuenta en NPM
Para publicar tu librería solo tienes que subir los cambios a tu rama master
o hacer un pull-request
desde github y automáticamente se realizarán las siguientes acciones:
- Genera un número de versión que cumple el estándar SemVer.
- Crear/Actualizar el archivo CHANGELOG.md con los cambios de la versión.
- Compilar la librería
- Publicar la librería en NPM y Github, añadiendo las notas con los cambios de la versión.
- Generar y publicar tu documentación en GitPages
- Configurar semantic-release y las acciones de github
- Configurar test con
jest
,coverage
y añadirlo a Git Actions - Añadir plantillas README.md, errores y pull-request de Git Hub
- Completar el archivo README.md indicando como personalizar y utilizar la plantilla
- Configurar herramientas para documentar el proyecto, y publicarla automáticamente con Git Actions
- Documentar un flujo recomendado para utilizar GIT
- Configurar
dependentabot
para comprobar si hay versiones nuevas de alguna librería que utilice el proyecto - Añadir licencia.
- Configurar el proyecto como plantilla
- Modificar el código de ejemplo en la carpeta src
- Añadir badgets
- Ejemplo para desarrollar para Node
- Ejemplo para desarrollar para el Navegador
- Añadir script post-install, Opción sin librerías
Si quieres aprender más sobre las herramientas que utilizo en esta plantilla y como configurarlas, te recomiendo que sigas este tutorial donde explico paso a paso como he creado esta plantilla.
- Añadir imágenes (capturas)
- Añadir videos de algunos flujos
- Publicar el tutorial
Este proyecto es y será siempre de código abierto. Eres bienvenido si quieres contribuir a su desarrollo y mejorarlo cada vez más. Para ello, tienes varias posibilidades:
- Remitiendo errores
- Solucionando errores
- Añadiendo nueva funcionalidad
- Compartiendo en redes sociales
- Convirtiéndote en un colaborador oficial
- Haciendo una pequeña donación
El código está disponible bajo la licencia MIT. Esto significa que puedes usarlo, modificarlo o hacer lo que quieras con él. Esto también significa que lo ofrezco de forma gratuita, así que si encuentras algún error no lo critiques, contribuye al proyecto y repórtalo o mejor aún, solucionalo, será un placer añadirte como colaborador.
<> con