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

lionel-app

v1.4.0

Published

A lightweight web application framework for learning, and make work more faster.

Downloads

113

Readme

TravisCI Status

Lionel is an open-source and minimalist environment to build your apps easily. You can create little websites for your company, presentations, or web applications.

With Lionel you can create:

* webpages with the latest ECMAScript standards
* web applications
* web services with databases

With Lionel Template Management you can:

* separate your HTML and Javascript files to many places in Frontend too
* reuse every element to save time and space
* have a connection to server live data to the client
* use your external libaries in multiple ways

Lionel backend give you:

* A lightweight Router what can help to manage what you want to show in specific urls
* Compatibility with standards: No need to learn too much because we use familiar technologies, like Middleware, Router
* CPU + RAM friendly development: Because of the project doesn't have too much dependencies and it doesn't have big tasks in the background, you can develop in an older computer without any problems too
* Responsiveness

Install

#####Install from console

npm install lionel-app

#####First server (basic)

const {initLionelServer} = require("lionel-app/bin/initLionelServer");
const {Lionel} = require("lionel-app/bin/LionelClass");
const Router = Lionel.Router;

const port = 8080;
initLionelServer(port,{
	appData: 'appData', //Folder in application data. (If needed)
	appName: 'Application', // Application name
	lib:'./app/lib/', //Folder for the CommonJS exports (Deprecated)
	view:'./app/views/', //Folder for the HTML files/templates
	js:'./app/js/', //Folder path for the onRendered Javascripts for the templates
	debug:true,
	liveUpdate:true, // Reload folders during the development
	mainDirectory:__dirname, //Current working directory
	separator:__dirname.indexOf('/') !== -1 ? '/' : '\\', //Path separator, (slash) If you want to add a custom
	requestListener:function(req,res) {
		//HTTP Server Request listener or middleware
	}
});


Router.route('/index');
Router.route('/', 'index');

#####First server (Middleware)

For middleware you can use Express JS and Lionel Middleware too. Usage is almost the same. Details in the documentation later

const {initLionelServer} = require("lionel-app/bin/initLionelServer");
const {Lionel} = require("lionel-app/bin/LionelClass");
const Router = Lionel.Router;

const {app} = require("./app");


const port = 8080;
initLionelServer(port,{
	appData: 'appData', //Folder in application data. (If needed)
	appName: 'Application', // Application name
	lib:'./app/lib/', //Folder for the CommonJS exports (Deprecated)
	view:'./app/views/', //Folder for the HTML files/templates
	js:'./app/js/', //Folder path for the onRendered Javascripts for the templates
	debug:true,
	liveUpdate:true, // Reload folders during the development
	mainDirectory:__dirname, //Current working directory
	separator:__dirname.indexOf('/') !== -1 ? '/' : '\\', //Path separator, (slash) If you want to add a custom
	requestListener:app //Middleware
});


Router.route('/index');
Router.route('/', 'index');

#####First server with Databases (mongoDB and MySQL compatibility added)

In a Node JS application (later in PHP too), you can manage external databases like MySQL and MongoDB and access them from the client with LionelClient.mongodb() and LionelClient.mysql() in the client.

API is simple so anybody can start learning and create an application what using databases.

PHP Support only MySQL for now.

const {initLionelServer} = require("lionel-app/bin/initLionelServer");
const {Lionel} = require("lionel-app/bin/LionelClass");
const Router = Lionel.Router;

const {app} = require("./app");


const port = 8080;
initLionelServer(port,{
	appData: 'appData', //Folder in application data. (If needed)
	appName: 'Application', // Application name
	view:'./app/views/', //Folder for the HTML files/templates
	js:'./app/js/', //Folder path for the onRendered Javascripts for the templates
	mainDirectory:__dirname, //Current working directory
	requestListener:app,
	db: [
    		{
    			type: 'mysql',
    			host: 'localhost',
    			database: 'angel',
    			port: 3306,
    			username: 'root',
    			password: ''
    		},
    		{
    			type: 'mongodb',
    			host: 'localhost',
    			database: 'collection',
    			username: '',
    			password: '',
    			port: 27017,
    		}
    	]
});


Router.route('/index');
Router.route('/', 'index');

Future updates

Because of the Lionel App project is not done, I try to make the best out of it with giving new features, and fixing issues like:

* A Core Bug fixes
* Scalability: Helps to your server to use more CPU and break the limits of Node JS
* Fix bugs from user feedbacks
* Empty project generator
* User Documentation