This page isn't available on phones.

Sorry, but this page is not available for mobile devices, use a PC to view it. This page is for a desktop-only app anyway.

FuckingNode 5

The fucking chaos of maintaining JavaScript projects ends here

FuckingNode is a unique, state of the art CLI to automate headache giving tasks and make it easier to develop in N*deJS, Deno, or Bun.

FuckingNode doing some cleanup

What the f*ck is FuckingNode?

You hate running eslint every time. You hate npm taking away your disk space. You have your SSD being full because of 20 libraries you're not even releasing anyway. You hate forgetting test suites before committing code. You hate messing up while migrating a NodeJS project to Bun. You hate this fucking chaos, and so do we.

So, we built a solution.

What can it actually do?

All these things by just running one command.

Cleaning your projects

npm dedupe, pnpm prune, whatever you need. They all recursively run across all of your projects.

Cleaning caches

npm is so slow it feels like it doesn't cache stuff, but it does - taking GBs. We know how to clean it up.

Linting & prettifying

If enabled, every project gets passed through ESLint/Prettier (or the tools of your choice). Automatically.

Cleaning outputs

Keep forgetting that dist/ folder with stuff you already released taking up storage? Forget about it, we clean it for you.

Updating dependencies

You usually forget this, don't we all? We do it for you, and even push the updated lockfile to Git if you want to.

Removing node_modules (?)

This is obviously optional, but if your hard drive surprises you with literally no space left, you can surprise it with this "feature".

Some other problems we solve with very cool features

You're a coder, not a cloner

Cloning a project, installing dependencies, opening your IDE...
Save the commands and clicks up, and focus on coding.

Kickstart
Setup

You spend a bit too much time messing with config files

Agreeable, right? You should be writing code, not config. We brought it for you, just run setup and we'll take care.

There's actually a lot more features, find out by looking at our docs.

FAQ

Actually useful answers for you.

What are the steps to get clean to work across all my stuff ASAP?

You just need to add all your projects to the FuckingNode list, using fuckingnode add. If you have a single folder with all of your projects (like most people do), you'll enjoy the fact that glob patterns like /* do work.

Once added, clean will take care of all added projects one by one.

Accidentally committing .env is also a headache, you got a fix for that?

fuckingnode commit, besides preventing the "oh i forgot the test suite" headache, also prevents commits that include .env or node_modules/. Your welcome.

Needing to hotfix a commit is also a headache. What about that?

fuckingnode uncommit undoes the last commit and lets you modify its files, then automatically commits them back.

If a commitCmd exists (like your test suite), it'll run it again, to stop you if the code doesn't pass tests (note: if that happens, you'll need to re-run the commit command as uncommit will go out of loop; files remain in stage area so this isn't a big problem).

Can this format my code automatically?

This can format and lint your code + update dependencies + remove outdated build artifacts for every fucking project you have.

And yes, it can do it automatically (that's its purpose).

How to "add a project"? Is it needed?

Just run fkadd from its root (or fkadd [filepath]) and it'll be auto-added. If it's a monorepo it'll ask what to do with its workspaces.

It's not needed, since most features are either runtime agnostic or can detect the current-working-directory as a project, but it is highly recommended, as the main feature (automated, bulk cleanup) does require it.

What if I don't want to maintain my project anymore? You can't "fix" that headache... can you?

Actually, yes.

FuckingNode provides an automation (fuckingnode surrender) to deprecate projects. It'll generate a deprecation notice in the README for you, push that to Git, then remove the code (and consequently node_modules) from your local system so you don't waste storage to an abandoned project.

Fuck it, I don't want to code in NodeJS anymore. You can't help with that...?

Actually...

fuckingnode terminate entirely uninstalls a language and removes package manager caches from it, as well as typical installation leftovers. For NodeJS, it removes all three package managers if installed. It works for any runtime/stack we support.

Platform Support

Does FuckingNode fuck around your runtime? Probably.
Don't ask why did we add support for Rust, neither do we know.

Feature NodeJS Deno Bun Go Cargo
Cleaning your projects 🟡 🟡 🟡 🟡
Kickstart projects
Smart commits 🟡 🟡
Semi-automated releases ✅ npm ✅ jsr ✅ npm ✅ crates
Stats 🟡
FuckingNode Surrender™
Setups
FuckingNode Audit™
Auto-launch

You scrolled until the FuckingEnd

If you don't love FuckingNode by this point, you simply don't love yourself.
It's free, open source, has no paywalls, no tracking, no 20-step-long onboarding...
And it does everything, EVERYTHING it can to save your valuable time.
There's literally no reason for you to leave without trying it.
Download it and give it a go! You will love it.

Get started now!