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 🙏

© 2026 – Pkg Stats / Ryan Hefner

mongodb-fastserver

v1.0.1

Published

conector mongo db for mvserver and fastserver

Readme

Connector mongodb

Este paquete es un complemento del paquete llamado fastserver cual puedes encontrar la documentacion de su uso en la pagina de npm https://www.npmjs.com/package/fastserverexp puede instalar usando el comando npm i fastserverexp este es para proyectos mvc con express

Este paquete es un complemento del paquete llamado mvserver cual puedes encontrar la documentacion de su uso en la pagina de npm https://www.npmjs.com/package/fastserverexp puede instalar usando el comando npm i fastserverexp este es para proyectos lambda function con node js

Este es un conector de mongo db actualmente estamos usando la version de mongoose "mongoose": "^7.5.0" , para poder regirtar este conector y usarlo debemos hacer lo siguiente

Una vez descargado de npm utilizando el comando npm i mongodb-connector-fastserverexp debemos registrarlo de la siguiente manera

const mongodb_connect = require("mongodb-fastserver");
apserver.registerConnector("db", "mongodb", mongodb_connect.mongodb());

debemos agregar esta fracion de codigo en el index.js ( archivo principal ) de nuestro proyecto quedaria de la siguiente manera en caso de usar el modulo fastserver para proyectos con lambda function aws

// registramos nuestro paquete 
const Server = require('fastserverexp')
const apserver = new Server();

//  hacemos uso del modulo de path para pasar la ruta de nuestros collectores
const path = require ('path')
const pathApp = path.join(__dirname, '/source/collector');

// el archivo de  configuracion de las apis
const routeApisRegister = [require('./config/config.apis.router'),compression]

// registramos nuestro connector de mongodb con mongoose 
const mongodb_connect = require("mongodb-fastserver");
apserver.registerConnector("db", "mongodb", mongodb_connect.mongodb());


// inicializamos la aplicacion 
apserver.start(4000,routeApisRegister,pathApp);
  • mvserver https://www.npmjs.com/package/mvserver
  • faserverexp https://www.npmjs.com/package/fastserverexp

de esta manera ya podemos hacer uso de nuestro connector, a continuacion haremos un ejemplo de como lo usarimos y como llamarlo desde nuestros controladores.

Antes de iniciar debemos crear tener la carpeta llamada collector aqui se hara el registro de todos los collectores que usaremos con nuestro connector para ello debemos hacer lo siguiente cada modulo tiene su documentacion de como usarlo, el registro de este conector en ambos modulos es de la misma manera

Uso del connector mongodb

Aqui te mostrare con un ejemplo como usar el conector, como primer punto debemos crear un archivo en la carpeta que anteriormente creaste con nombre collector dentro podras definir todos los collector que necesite tu aplicacion, para definir uno debes hacerlo de la siguiente manera

const config = require('../../config/config.mongodb')
fastserver.collector("saveInformationUser", {
  type: "db",
  action: "mongodb",
  server: {
    user: config.user,
    password: config.password,
    host: config.hostname,
    db: "userservice",
    options: config.connectOption
  },
  collection: "users",
  model: "userModel",
  queryType: "save",
  schema:[{
    id: { type: String, require: true },
    nombre: { type: String, require: true },
    apellido: { type: String, require: true },
    tel: { type: String, require: true }
}],
  parameter: []
});

De esta manera puedes el connector que usaras, en este punto ya esta listo para ser usado,en el siguiente punto te dire como usarlo desde nuestro controlador del metodo de tu api

primero vamos a ir a tu controlador que te explico como crear en la pagina de npm https://www.npmjs.com/package/fastserverexp

En nuestro controlador podemos hacer el uso de nuestra palabra global fastserver ejemplo

Ejemplo de llamdo de collector desde nuestro controlador con fastserver

let model ={
    id: "iyUq83egzGKOdP0T58tI",
    nombre: "Edwuad",
    apellido: "king",
    tel: "+507 62569274"
}
fastserver.collect('saveInformationUser').get(model, (data, err) => {
            if (err) {
                send({}, err)
            } else {
                this.response.data = data;
                this.response.error= "",
                this.response.errorCode= 200,
                this.response["codeAlert"]= "save",

                res.status(200).json({ status: 200, result: this.response });
            }
        })

Este lleva como parametro el nombre del collector que usaremos y el modelo de datos que enviaremos

Ejemplo de uso de conector uso del queryType --> save

const config = require('../../config/config.mongodb')
fastserver.collector("saveInformationUser", {
  type: "db",
  action: "mongodb",
  server: {
    user: config.user,
    password: config.password,
    host: config.hostname,
    db: "userservice",
    options: config.connectOption
  },
  collection: "users",
  model: "userModel",
  queryType: "save",
  mode: "dev",
  schema: SchemaUser,
  parameter: []
});

mode: Se deja vacío o se coloca prod si es con una base de datos de mongo alojada en un server, si está usando una base de datos local se coloca “dev”

schema: verificar la documentacion de mongose de como manejar los schema, en este ejemplo crearemos un archivo el cual manejara el esquema de nuestra colecion en mongo db

model: nombre del modelo con el que llamara su esquema

cada comando en el controlador de mongodb lleva un esquema del json distinto:

queryType: el tipo de acción que quiere ejecutar, los tipos de comando que se tiene son los básicos para hacer un CRUD

  • save
  • findOneAndUpdateData
  • find

En los ejemplos anteriores te explique como hacer uso del connector en el ejemplo usamos el queryType save para crear o guardar la informacion de nuestro modelo, este valor save es para guardar nueva informacion.

Ejemplo de uso de conector uso del queryType --> findOneAndUpdateData

Este Comando es el mismo de la documentacion de mongoose https://mongoosejs.com/docs/documents.html en este ejemplo te explicare como usarlo con el modulo de fastserverexp.

cuando vamos a enviarle los parametros para hacer el cambio deben contener el siguiente formato de otra manera no funcionara

{
    "filter" :{
        "email":"[email protected]"
    },
    "update":{
        "nombre": "Abdiel Antonio",
        "apellido": "Flores",
        "tel": "507 62569274"
    }
   
}

la propiedad filter debes colocar uno de los campos unicos que definiste, puede ser email o id en este caso La propiedad update Colocas los valores que quieres cambiar

Ejemplo de uso de conector uso del queryType --> find

Este comonado es el mismo de mongoose revisa la documentacion en la pagina https://mongoosejs.com/ en este ejemplo te explicare como usarlo en nuestro modulo.

Los parametros que le debes enviar deben ser de la siguiente manera de lo contrario fallara

{
    "find":{
      "email":"[email protected]"
    }
   
}

dentro de la propiedad *find debes de colocar el campo por el que lo buscaras

Ejemplo de uso de conector uso del queryType --> deleteOne

El comando deleteOneData usamos el deleteOne de mongodb para mas informacion de su uso revisar la documentacion, en este ejemplo te explicare como usarlo.

Los parametros que debes enviarle al api debe ser el siguiente


{
 "email":"[email protected]"
}

Observacion: debes colocar el campo que definiste como unico para poder eliminar el objeto que necesitas se recomienda eliminar tambien por el campo _id que genera mongo por default.