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

rave

v0.4.5

Published

Zero-configuration application bootstrap and development.

Downloads

270

Readme

RaveJS

┏( ˆ◡ˆ)┛ ┗(ˆ◡ˆ )┓ RaveJS rocks! ┏( ˆ◡ˆ)┛ ┗(ˆ◡ˆ )┓

Note: RaveJS is still under development. You can run your apps in dev mode, but you cannot build your application for production, yet. Please give it a try, though, and let us know what you think. Or check out the open issues, if you'd like to contribute.

What is RaveJS?

Rave eliminates configuration, machinery, and complexity. Stop configuring and tweaking module loaders, file watchers, minifiers, and transpilers just to get to a runnable app. Instead, go from zero to "hello world" in less than 30 seconds. In the next 30 seconds, use npm or Bower to install your favorite frameworks and libraries. Start coding instantly without configuring anything.

With the help of Rave Extensions:

  • Extend the module loader to load CSS, templates, JSON, JSX, etc.
  • Use gulp or grunt plugins to build your app for production
  • Integrate with your favorite testing framework

Again, with zero configuration in most cases.

Rave incorporates an ES6-style loader that auto-detects module format, allowing you to intermix packages authored in AMD, node, and (soon) ES6 formats. It also easily loads JSON, CSS, JSX, text, or virtually any other format just by installing a Rave Extension.

Rave auto-detects your project's packages regardless of whether you installed them via Bower or npm. There's no need to configure a loader or create an application manifest file.

In progress: rave also intelligently and effortlessly builds your app according to your preferences by inspecting the gulp or grunt plugins you've installed.

In progress: Rave provides a smart command-line tool that you can optionally use to simplify tasks and reduce common errors. Rave CLI doesn't replace the tools you already love, such as bower or npm, gulp or grunt. Rave CLI just makes them much easier to use in a rave app.

Why should I use RaveJS?

  • Requires zero machinery or configuration to get started and zero ongoing maintenance
  • Enables brain-dead simple project startup
    • Modern, modular architectures are simple, too!
  • Offers huge selections of packages from npm and Bower
  • Provides a platform for third-party integration
  • Embraces the future: an ES6 Loader polyfill is built in
  • Creates easy-to-follow demos, tutorials, and prototypes

Does RaveJS require a PhD in Rocket Science?

No. If you can do npm install or bower install and if you can add a single script element to an HTML page, you can master Rave! If that's too much work, clone a Rave Starter for a head start.

Rave is the absolute easiest way to get started with modules. Author AMD, CommonJS, or (soon) ES6 modules without futzing with transpilers, file watchers, or complex build scripts.

How do I start?

Jump straight to the Getting started section of the Developing apps with rave guide.

Check the docs/ folder for more information.

How does it work?

Rave uses the metadata you're already aggregating when you use JavaScript package managers such as npm and Bower. This moves the configuration burden from you, the application developer, to package authors.

Package authors already create metadata when they publish their packages to npm and Bower. Rave uses the metadata in package.json and bower.json to auto-configure an ES6 Loader (or Loader shim) so there's no messy AMD config or browserify build process. (Soon) Rave will use metadata to automate the build/deploy and testing processes, too.

Rave Extensions allow third parties to provide new capabilities to Rave or to your application. Install the extensions you desire easily through npm (npm install --save <name-of-rave-extension>) or Bower (bower install --save <name-of-rave-extension>).

Rave Extensions do many things:

  • Auto-configure your application's loading patterns
  • Auto-configure your application's build patterns (soon)
  • Auto-configure your application's deployment patterns (TBD: end of 2014)
  • Auto-configure your application's testing patterns (TBD: end of 2014)
  • Integrate third-party packages into your application by supplying additional metadata or glue code

Rave extensions are easy to create and easy to find on npm and Bower by searching for "rave-extension".

About

RaveJS is one of the many stand-alone components of cujoJS, the JavaScript Architectural Toolkit.