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

owl-factory

v0.1.9

Published

owl is a light-weight fast express sugar-coat library for making software development faster

Downloads

27

Readme

DolphJs

DolphJs is an express.js library for making software development easier by taking care of all the unneccessary tasks developers have to worry about.

DolphJs makes it possible for junior developers to write code in an environment set-up as if they are senior's. It supports robust codebase system and the best error handling middlewares.

With dolphJs code is written smaller as it has many repetitive features taken account of and put into the engine which is then exposed to the developer.

Installation

To install the package, run:

npm install owl-factory

Usage

To use the package, you'll need to require it in your project and then set up your routes.

Here's an example of how you can use it:

const Dolph = require('owl-factory');

class TestController {
	constructor() {}

	getMsg = Dolph.catchAsync(async (req, res, next) => {
		res.send('welcome to this endpoint');
	});
	sendMsg = Dolph.catchAsync(async (req, res, next) => {
		const { body } = req;
		if (!body.name)
			return next(
				new Dolph.AppRes(
					Dolph.httpStatus.BAD_REQUEST,
					'error, provide name in json'
				)
			);

		res.status(200).json(body);
	});
}

class TestRoute {
	path = '/test';
	router = Dolph.Router();
	controller = new TestController();
	constructor() {
		this.initializeRoutes();
	}
	initializeRoutes() {
		this.router.get(`${this.path}`, this.controller.getMsg);
		this.router.post(`${this.path}`, this.controller.sendMsg);
	}
}

const dolph = new Dolph([new TestRoute()], '9999');

dolph.listen();

CatchAsync

The catchAsync function is a utility function that wraps your route handler functions and catches any errors that may occur inside them. This is useful for handling errors in an async route handler without having to use try-catch blocks.

Here's an example of how you can use it:

const routeHandler = Dolph.catchAsync(async (req, res, next) => {
	// your route code here
});

AppRes

The AppRes class is a custom error class that you can use to return custom error responses to the client. It takes two arguments: an HTTP status code and a message.

Here's an example of how you can use it:

if (!body.name)
return next(
	new Dolph.AppRes(
		Dolph.httpStatus.BAD_REQUEST,
		'error, provide name in json'
	)
);

HttpStatus

The httpStatus object is an object containing commonly used HTTP status codes as properties. You can use this to set the status code of your custom error responses. It is just an export of the original http-status package, here [https://github.com/adaltas/node-http-status]

Here's an example of how you can use it:

new Dolph.AppRes(Dolph.httpStatus.BAD_REQUEST, 'error message')

License

This project is licensed under the MIT License - see the LICENSE file for details

Please note that this package is still in production and more versions will be released in the future. Stay tuned for updates and new features!

BENCHMARK

To run benchmark for this app, navigate to the brnchmark folder

    cd benchmarks

then run

    node benchmarks.js

to start the server then,

    make all

to perform the benchmark