npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

gitbook-start-proyectofinal-noejaco17

v0.0.19

Published

Proyecto final Sistemas y Tecnologías Web

Downloads

8

Readme

Proyecto Final Sistemas y Tecnologías Web

Información

Se desarrolla un plugin para el paquete npm-gitbook-start-plugin-general-noejaco17. La idea es permitir a un usuario implementar y desplegar sus propios libros electrónicos a través de la creación de un servidor en la plataforma heroku así como controlar y llevar un seguimiento de los usuarios que tienen acceso a su contenido.

La aplicación del usuario se desplegará en www.nombre_app.herokuapp.com haciendo uso del plugin mLab para la gestión de la base de datos adherida MongoDB e implementando diversos tipos de autenticación: LocalStrategy, autenticación a través de Github, Twitter y Google.

Paquetes y herramientas necesarias

Pasos a seguir:

Instalación del plugin

Una vez instalado el paquete principal, deberemos proveer al mismo de un package.json, para ello escribiremos en consola:

npm init -y

Esto nos generará un package.json, con la opción -y evitamos tener que interactuar con el prompt de npm puesto que en este caso no necesitamos configuración ninguna.

Llegados a este punto ya podemos comenzar con la instalación del plugin final, lo haremos mediante el siguiente comando:

[sudo] npm i[nstall] --save gitbook-start-proyectofinal-noejaco17

Finalizada la instalación podremos ya ejecutar la opción --deploy final de nuestro paquete principal. Para ello escribimos en consola el siguiente comando:

gitbook-start --deploy final --directorio nombre_directorio

En este paso el programa nos pedirá ciertos datos, como son el nombre de nuestra aplicación, repositorios... Una vez introducidos, se nos habrá creado el directorio con nombre: nombre_directorio. Deberemos acceder a él (cd nombre_directorio) e instalar los paquetes necesarios a través de:

npm i[nstall]

Nota: En caso de dar problemas de no encontrar los módulos debido a un conflicto de paquetes, ejecutar su instalación manualmente- Esto puede suceder con un número muy reducido de paquetes. Para su instalación:

npm install --save nombre_paquete

Para el trabajo personal sobre nuestro libro

A continuación debemos iniciar nuestro directorio como repositorio git:

git init

Una vez hecho esto solo necesitaremos añadir como remoto el repositorio git de nuestra aplicación heroku:

git remote add origin __repo_git_heroku__

Llegados a este punto ya tendremos lo necesario para trabajar sobre nuestro libro. La edición del libro se lleva a cabo en el directorio /txt. Una vez finalizado, o en cada momento que queramos guardar lo que llevamos realizado ejecutaremos:

gulp deploy

Y por último, para arrancar nuestra aplicación, podremos hacerlo mediante:

  • Node, de forma local:
node app.js

A continuación en el navegador accedemos a: localhost:8080

  • Heroku: Creamos nuestra aplicación en heroku, una vez creada, introduzca lo siguiente:
heroku git:remote -a <nombreapp>

Para crear la base de datos para nuestro servidor mongo en heroku a través de mlab, introducimos el siguiente comando:

heroku addons:create mongolab

Nota:Si queremos abrirla de manera manual y ser el administrador, usamos el siguiente comando:

heroku addons:open mongolab

Nota:Si queremos saber nuestra URI, usamos lo siguiente:

heroku config|grep MONGODB_URI

Para desplegar nuestra aplicacion en heroku haremos

gulp deploy-heroku-mongo

A continuación nos dirigimos a la página oficial de Heroku y accedemos a nuestra aplicación.

Para la configuración de los servicios de autenticación de nuestra aplicación

Como se ha citado en líneas anteriores, nuestra aplicación implementa cuatro tipos de autenticación: LocalStrategy, Github, Twitter y Google. Para poder servirnos de las ventajas que estas ofrecen para nuestra aplicación serán necesarios ciertos ajustes: En la estructura generada en pasos anterioriores encontraremos un archivo llamado auth.js. Este archivo nos sirve para mantener la información necesaria para las diversas autenticaciones de nuestra aplicación. En el fichero podremos ver tres apartados principales, cada uno de ellos para la configuración de las respectivas autoridades autenticadoras. Podremos ver tres campos para cada uno de ellos, el primero referido al id de la aplicación, el segundo al secreto de la misma y el último para la callback a la que llamará la autoridad.

Obtención de los datos para auth.js

  • Github

    • Acceder a nuestra cuenta Github
    • Dirigirnos a settings
    • En el panel que se muestra en la parte izquierda acceder a OAuth applications
    • En esta sección registraremos nuestra aplicación y accediendo a ella podremos obtener los tres campos necesarios.
  • Twitter

    • Nos dirigimos a la sección developers de Twitter
    • Registraremos una nueva aplicación en caso de no tener una y obtendremos los datos necesarios de la misma igual que en el caso de Github.
  • Google

    • Accederemos a la sección developers de Google
    • Crearemos un nuevo proyecto
    • Dentro de nuestro proyecto accederemos a la sección APIs & Auth
    • En la sección de Credentials asignaremos los orígenes para los que Google permitirá acceder a nuestra aplicación así como la callback designada para la misma.
    • Ahora ya podremos acceder al proyecto y consultar tanto el id como el secreto necesarios.

Enlaces:

Enlace al repositorio del paquete

proyecto-final-noejaco

Enlace al paquete npm

paquete npm final

Autores

Noé Campos

Jacobo