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

rapid-react

v2.0.4

Published

A light weight interactive CLI Automation Tool 🛠️ for rapid scaffolding of React apps with Create React App under the hood. ⚛️

Downloads

11

Readme

intro-gif

About :information_source:

Rapid React is an interactive CLI tool which automates the repetitive steps involved every time a new React app is setup. Usually developers :man_technologist: go through a time consuming process which involves waiting for create-react-app to finish it's boilerplate setup, followed by installation of dependencies & dev dependencies, setup of folder structure, routing, state management, e.t.c. before it can finally start working on the app. :construction:

Well, now you can grab a cup of :coffee: while Rapid React scaffolds the app for you! :relieved:

Rapid React 2.0 is out! :gift:

update-notification

Thanks for showing your love for Rapid React which has motivated further to work on some cool new features!

  • Rapid React has been re-written from React Redux to Redux Toolkit APIs. This would dramatically reduce the boilerplate code required to work with Redux and further cut down your development efforts. :weight_lifting:

This has been considered after an in-depth advice from Mark Erikson who is a Redux maintainer. You may check his suggestions here which cover RTK as the recommended way to write Redux logic. This would be a breaking change for existing users.

  • Added support for Redux Thunk middleware!

  • A much more comprehensive and better looking version update notification!

  • A notification sound would play once the setup is complete! :bellhop_bell:

Features :tada:

  • Get notification every time an update is available. :gear:
  • Supports both JavaScript and TypeScript. :heart_eyes:
  • Installs both dependencies and dev dependencies.
  • Supports popularly used CSS preprocessor SASS! :fire:
  • Choose from commonly used folders (assets, components, hooks, services, utils, e.t.c.) to scaffold.
  • Scaffolds custom folder as well.
  • Choose preferred export type: named/default. :thinking:
  • Setups routing with user defined routes.
  • Setups Redux state management with user defined reducers along with:
  • Setups MobX state management with user defined stores.
  • ...and much more! :tada:

Requirements :white_check_mark:

  • Node.js installed on your system.
  • An active internet connection for CLI to work.

Installation :rocket:

From your terminal run:

# install the package from NPM
$ npm install rapid-react

Documentation :green_book:

Rapid React installs rapid-react command in your system. To run the tool, you need to invoke this command from your terminal:

# that's it!
$ rapid-react

As soon as run the command you are greeted by the CLI.

greetings-screenshot

From there on, you are asked a couple of question for a tailored experience for your app setup.

walk-through-screenshot

The utility would walk you through from following:

  • Language Preference Choose between JavaScript and TypeScript

  • App Name Enter your app name. By default it fallbacks to my-app.

    :white_check_mark: valid app names foo 123foo foo123 foo-bar

    :x: invalid app names Foo Foo-Bar FooBar

  • Export Type Preference Choose between Named and Default.

  • StyleSheet Preference Choose between CSS and SCSS.

  • Routing requirement Choose either Yes or No.

    • If required, enter space separated route names e.g. home login about signIn signUp

      :white_check_mark: valid route names foo fooBar FooBar Foo123

      :x: invalid route names 123foo foo-bar foo.bar foo?bar

  • State management requirement Choose either Yes or No.

    • If required, select one Choose between MobX and Redux. Once chosen you'll be prompted to enter space separated names of stores(in case of MobX) or reducers(in case of Redux). The conventions would be same as routes.

    • Installing additional Redux libraries If you chose Redux you'll be prompted to choose from these additional libraries usually used with Redux:

      • Redux Logger
      • Redux Thunk
      • Redux Saga
  • Scaffold folders:

    • Standard You can choose from commonly used folder to scaffold: assets, components, data, errors, fallbacks, hooks, layouts, services, types, utils, validations.
    • Custom You can enter space separated folders. The conventions would be same as routes.
  • Dependencies: You can enter space separated dependencies. The conventions would be same as routes. E.g. antd lodash moment. :warning: In case you are using TypeScript you'll have to explicitly mention type definition packages required for these dependencies. Such packages usually start with @types/ prefix and are installed as dev dependencies.

  • Dev Dependencies: You can enter space separated dev dependencies. The conventions would be same as routes. If you're not sure about what a dev dependency is, you can refer to this.

Contributing :handshake:

Your contributions are always welcome! Please have a look at the contribution guidelines first. 🎉

License :page_facing_up:

Rapid React is licensed under the terms of MIT License.