DEV Community

Sujit Kumar
Sujit Kumar

Posted on

rnr: The Tool That Speaks Every Project run scripts

Hey there, JavaScript and TypeScript developers! 👋 Are you tired of juggling different commands to start your various JS projects? Well, I've got some exciting news for you! I've created a tool called rnr (pronounced "runner") that makes running any JavaScript or TypeScript project super easy.

What's rnr and Why Did I Make It?

Imagine you're working on several JavaScript projects - maybe a React app, a Node.js server, and a Vue.js website. Each one needs a different command to start. It's like having a bunch of different remote controls, one for each device. Confusing, right?

That's why I made rnr. It's like a universal remote for your JS and TS projects. You just type rnr, and it figures out how to start your project, no matter what framework or library you're using!

Cool Things rnr Can Do

  1. It's Smart: rnr looks at your project and knows if it's React, Vue, Express, or any other popular JS framework.

  2. Works with Lots of JS Projects: Whether you're using Next.js, Express, React, Vue, or plain JavaScript, rnr knows how to handle them all.

  3. Picks the Best Package Manager: rnr automatically chooses between npm, Yarn, pnpm, or Bun - whichever is best for your project.

  4. One Command Does It All: Want to run in dev mode? Build your project? Start it in production mode? rnr can do all of that with just a tiny change to the command.

  5. Easy to Set Up: rnr sets itself up, but you can tweak things if you want to customize how it works with your project.

rnr Modes: Different Ways to Run Your JS Project

rnr is super flexible. It has different modes to help you work on your JavaScript project in different ways:

  1. Dev Mode: This is for when you're coding and want to see your changes right away. It's like having a live preview of your work.
    Use it like this: rnr dev or just rnr

  2. Build Mode: When you're ready to get your project ready for deployment, use this mode. It's like packaging up your app for shipping.
    Use it like this: rnr build

  3. Production Mode: This is for running your app in a production environment. It's optimized for performance, not for development.
    Use it like this: rnr prod

And we're not stopping there! We're working on adding even more modes to make your JavaScript development life easier.

How to Get Started with rnr

Getting rnr is super easy. Just type this in your command line:
Explore here

npm i -g @sujit-shrc/rnr
Enter fullscreen mode Exit fullscreen mode

Then, go to any of your JavaScript or TypeScript project folders and type:

rnr
Enter fullscreen mode Exit fullscreen mode

That's it! rnr will start your project for you.

Why I Made rnr

As a JavaScript developer, I was tired of switching between npm run dev, yarn start, pnpm run serve, and so on for different projects. I thought, "There has to be a better way!" That's how rnr was born - to make running JS projects simple and consistent.
Go to npmjs

Why You'll Love rnr

  • Saves Time: No more looking up how to start each JS project.
  • Works with All JS Frameworks: Use the same command for your React, Vue, Angular, or Node.js projects.
  • Easy Mode Switching: Switch between development, production, and build modes effortlessly.
  • Keeps Getting Better: We're always adding support for more JS tools and frameworks.

What's Next for rnr?

We're working on making rnr even better for JavaScript and TypeScript developers! We're looking at adding support for more frameworks, improving how it detects project types, and maybe even adding some cool features for testing and debugging. Stay tuned!

Try rnr Today!

Want to make running your JavaScript and TypeScript projects super easy? Give rnr a try:

npm i -g @sujit-shrc/rnr
Enter fullscreen mode Exit fullscreen mode

Check out our GitHub repo to learn more, report any issues, or contribute to making rnr even better for the JS community.

Let's make JavaScript development easier and more fun together!

Happy coding, JS enthusiasts! 😊


P.S. We'd love to hear what you think about rnr! Did you try it with your JavaScript projects? Do you have ideas to make it better for TypeScript users? Let us know in the comments or on GitHub. Your feedback helps us make rnr awesome for all JS developers!

Top comments (0)