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

xprgen

v5.1.1

Published

Express' application generator

Downloads

11

Readme

Express Logo

Updated Express' application generator.

👉 Up to date express-generator with new features.

NPM Version NPM Downloads Linux Build Windows Build

📌 This is a modified version of Express Generator which is nowadays highly outdated.

For more details see Dev Notes below...

New features

  • 👉 SaSS css engine works again (even with latest Node.js versions).
  • 👉 Includes nodemon to monitorize changes (npm run dev).
  • 👉 Uses Pug (instead of legacy Jade) templating engine by default.
  • 👉 Up-to-date versions of all dependencies.
  • 👉 Support for ESMrouter (--esmr flag) to transparently make available browser-enabled NPM packages client side.
  • 👉 Even easier usage: Ex.: npx xprgen --esmr -c sass myApp (Create an Express App with Pug, SaSS and ESMrouter.
  • 👉 Dependencies preinstallation. Ex: npx xprgen --esmr -i smarkform myApp.
    • Even for multiple packages. Ex: npx xprgen --esmr -i "smarkform sqltt chalk" myApp.
    • Also possible with devDependencies. Ex: npx xprgen -i sqltt -d mocha.
    • Guesses version as current 'latest' tag prefixed whith caret (likewise npm install).
    • ...but can be overridden. Ex: npx xprgen -i "node-sass@^4.1.0".

Quick Start

The quickest way to get started with express is to utilize the executable xprgen through npx to generate an application as shown below:

📌 Installation

If you prefer, you can install it locally using the following command:

$ npm install -g xprgen

To execute it locally, you'll have to omit the initial npx command at the beginning of the following sentences.

Create the app:

$ npx xprgen /tmp/foo && cd /tmp/foo

Install dependencies:

$ npm install

Start your Express.js app at http://localhost:3000/:

$ npm start

Or alternatively, to make it to restart every time a file is changed:

$ npm run dev

Command Line Options

This generator can also be further configured with the following command line flags.

        --version           output the version number
    -e, --ejs               add ejs engine support
        --pug               add pug engine support
        --hbs               add handlebars engine support
    -H, --hogan             add hogan.js engine support
    -v, --view <engine>     add view <engine> support (dust|ejs|hbs|hjs|jade|pug|twig|vash) (defaults to pug)
        --no-view           use static html instead of view engine
    -c, --css <engine>      add stylesheet <engine> support (less|stylus|compass|sass) (defaults to plain css)
        --esmr              add esmrouter (make browser-enabled npm packages available client side)
        --git               add .gitignore
    -i  --install <pkgs>    add specified pkgs as dependencies. Can be specified multiple times or as space-separated string. Accept optional @version spec.
    -d  --devInstall <pkgs> like --install but for devDependencies
    -f, --force             force on non-empty directory
    -h, --help              output usage information

Dev Notes

There are already several forks of it out there.

The aim (or one of its) of this new fork is to catch the attention of the other forks authors in order to join our efforts in a single package.

📌 If you are the author of one of these forks (or plan to create a new one), PLEASE contact me and I'll give you access to this repository.

I'm not an experienced maintainer neither have a lot of time to invest in it. But hopefully we could keep this useful tool more updated.

Name change

To break the "express-generatorX" sequence, I renamed it 'xprgen' which, in turn, will be more handy to be used as 'npx xprgen'.

Goals

Additionally to those already implemented (see New features section), you can find my inital goals in the TO-DO List I added to the project.

Please feel free to suggest/add your own ones.

Versioning

Last but not least...

As we've done several breaking changes (and also to avoid confussion with original express-generator's versions (and possible reviews in case they happen), I'll start versioning from next major number (5.0.0) and so on...

License

MIT