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

kron

v1.0.30

Published

O kron e um framework, que visa ser rápido e fácil de ser utilizado.

Readme

Framework Kron

Kron

Como utilizar o módulo Kron.

import { Kron } from 'kron';
const kron = new Kron(); 

const middleware = ({ request, response, next }) => {
    return next;
}

kron.route({
    method: 'GET',
    path: '/',
    handler: ({ response }) => {
        return response.status(203).json({ tudo: "certo" });
    }
});

kron.listen(3000); // Inicia o server, conter apenas um em todo sistema

Métodos.

Kron

O módulo kron ao ser importado, ele deverá ser instanciado, deverá conter apenas uma instância do kron, onde será o ponto de entrada. Para inciar o servidor deve-se no final usar o server.listen(3000);

import { kron } from 'kron';
const kron = new Kron();

kron.route({
    method: 'GET',
    path: '/',
    handler: ({ response }) => {
        return response.status(203).json({ tudo: "/Cliente" });
    }
});

kron.listen(3000);

Rotas

O kron tem um sistema de rotas, bem elegante, com ele você pode criar suas rotas muito facilmente. Segue abaixo o modo de criar novas rotas, deverá ser importado do módulo kron, deverá ser criado uma nova instância. Com isso já poderá ser criado novas rotas.

import { kron } from 'kron';
const kron = new Kron();

Como criar novas rotas.

import { kron } from 'kron';
const kron = new Kron();

kron.route({
    method: 'GET',
    path: '/',
    handler: ({ response }) => {
        return response.status(203).json({ tudo: "/Cliente" });
    }
});

kron.listen(3000);

A sintaxe de se trabalhar com rotas no kron, e bem simples deve apenas passar um objeto, que terá as seguinte propriedades.

Exemplo de rota.

{
    method:"GET",
    path:"/",
    middleware:[], // Opcional
    handler:({ response, request, next }) {
    
    }
}

Explicação dos campos da estrutura da rota.

  • method: Nesse atributo, deverá ser adicionado o método HTTP em upperCase.

  • path: Nesse atributo, deverá ser adicionado o path.

  • middleware : Esse atributo e o único que não é obrigatório, nele será passado um array de middlewares, que será executado antes do método handler, caso queira apenas validar alguns dados, é caso esteja tudo certo ele vá para método handler, deverá ser retornado o next, propriedade que terá acesso pela desestruturação dos argumentos, e caso queira que o próprio middleware realiza a resposta para o solicitante, e que não chegue no handler, será preciso apenas realizar a resposta normalmente.

return response.send("Método parou no middleware")

const middleware = ({ request, response, next }) => {
    return response.send("Método parou no middleware")
}
kron.route({
    method: 'GET',
    path: '/',
    middleware: [middleware],
    handler: ({ response }) => {
        return response.status(203).json({ tudo: "/Cliente" });
    }
});
  • Handler: O método handler e um dos mais importantes, e que acredito, o que mais você vai utilizar, nele é onde irá ficar a resposta da sua rota. Os argumentos que ela recebe, pode ser acessados usando desestruturação, onde irá retornar os argumentos { request, response, next }. Nele deverá ser retornado uma resposta, caso não seja retornado next o kron irá retornar uma mensagem default que não houve resposta.

{ request, response, next }.

Métodos requests

  • request.body: Utilizando esse método, terá acesso ao corpo da request em formato JSON
const { nome } = request.body;
console.log(body) // value = "Matheus"
  • request.params: Utilizando esse método, terá acessa aos parâmetros passados na url das rotas
const { nome } = request.params;
console.log(body) // value = "Matheus"

Métodos response

  • response.status(200): Utilizando esse método, você conseguirá setar o status code de resposta.
response.status(200).send("tudo certo");
  • response.json(): Faz com que a resposta,seja retornada em formato JSON.
response.status(200).json({retorno:"retorno"});
  • response.send(): Faz com que as resposta, seja retornada em formato de texto.
response.status(200).send("Tudo certo");
  • response.ContentType(): Faz com que o que a pessoa, especifique o content type da resposta.
response.status(200).ContentType(
    {
    'Content-Type': 'text/plain',
    'Cache-Control': 'max-age=3600' 
    }
);