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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@utarid/cryo

v1.0.0

Published

Smart project cleaner and archiver

Readme

cryo

cryo is an intelligent CLI tool designed for polyglot developers. It scans your workspaces, identifies forgotten projects, cleans up heavy build artifacts (like node_modules), and archives your source code securely.

Key Features

  • Smart Scanning: Automatically detects Node.js, Flutter, Java, Python, Rust, .NET, PHP, and Swift projects.
  • Deep Cleaning: Frees up disk space by deleting build artifacts with surgical precision.
  • Backup: Archives your source code into .tar.gz files. Capture full snapshots or lightweight source-only backups.
  • Rebuild Capability: Triggers build commands directly from the dashboard.
  • Insightful Dashboard: Tracks modification dates vs. build status.
  • Multi-Profile System: Manage separate configurations for Work, Personal, or Clients.

Supported Frameworks & Tools

cryo automatically detects the following project types and handles their specific build/clean operations:

| Framework | Detection File | Clean Target | Build Command | | :--- | :--- | :--- | :--- | | Node.js | package.json | node_modules, dist, .next | npm/yarn/pnpm install && build | | Flutter | pubspec.yaml | build, .dart_tool | flutter pub get | | Java (Maven) | pom.xml | target | mvn clean install | | Java (Gradle)| build.gradle | build, .gradle | ./gradlew build | | Python | requirements.txt | venv, __pycache__, dist | pip/pipenv install | | Rust | Cargo.toml | target | cargo build | | .NET | *.csproj, *.sln | bin, obj | dotnet build | | PHP | composer.json | vendor | composer install | | Swift/iOS | Podfile | Pods, build, DerivedData | pod install / swift build |

📦 Installation

Option 1: Run from Source

  1. Clone the repository:
    git clone https://github.com/utariddev/cryo.git
    cd cryo
  2. Install dependencies:
    npm install
  3. Run the CLI:
    npx ts-node src/index.ts

Option 2: Install Globally

npm install -g @utarid/cryo
cryo

📖 Usage Guide

Just type cryo (or the start command) to launch the interactive menu.

🚀 CLI Commands

You can use cryo directly from your terminal without entering the interactive menu.

| Command | Description | Example | | :--- | :--- | :--- | | cryo profiles list | List all saved profiles. | cryo profiles list | | cryo profiles show <name> | Show specific profile details. | cryo profiles show Work | | cryo profiles create <name> -p <paths> | Create a new profile. | cryo profiles create Work -p ./src,./apps | | cryo profiles delete <name> | Delete a profile. | cryo profiles delete Tmp | | cryo scan <target> | Scan and list projects in the target path or profile. | cryo scan ./projects | | cryo clean <target> [-f] [-d] | Clean build folders. -f: Force, -d: Dry-run. | cryo clean Work -d | | cryo build <target> | Rebuild all projects in the target. | cryo build ./my-app | | cryo backup <target> [-o <path>] | Backup projects to a zip archive. | cryo backup Work -o ./backups |

  • target: Can be a valid system path (e.g., ./src) OR a saved profile name (e.g., Work).

🛠️ Options & Flags

| Flag | Long Name | Description | | :--- | :--- | :--- | | -f | --force | Skips the confirmation prompt. Dangerous but useful for scripts. | | -d | --dry-run | Simulation mode. Shows what would happen without deleting anything. | | -p | --paths | Comma-separated list of paths (used in profiles create). | | -i | --ignore | Comma-separated list of ignore patterns (used in profiles create). | | -o | --out | Custom output directory for backups or profiles. |

1. Main Menu

The central hub where you can manage projects or configure profiles.

  • 📂 List Projects: View all projects in the active profile, sortable by date.
  • 🧹 Clean Projects: Select multiple projects to wipe their build folders.
  • 🔨 Build Projects: Re-compile selected projects (streams output to terminal).
  • 📦 Backup Projects: Archive source code to your configured Backup Path.

[!IMPORTANT] Raw Snapshot Philosophy: By default, cryo archives everything (including node_modules, build, etc.) to ensure a perfect point-in-time snapshot.

If you want a lightweight source-only backup, simply run the Clean command first, then perform the Backup.

2. Project Explorer

When you select List, cryo shows a clean, aligned table using breadcrumbs for context:

   List Projects > Work
  -----------------------

  Date        Build Status        Type        Project Name
  ------------------------------------------------------------
  18.01.2026  19.01.2026 (dist)   nodejs      cryo (/Users/ben/works/cryo)
  15.01.2026  None                flutter     mobile_app (/Users/ben/works/mobile_app)
  • Date: The last time you modified the source code (src, lib, etc.).
  • Build Status: Shows the last build date and the artifact folder. Red "None" means no build found.

3. Profiles

You don't need to scan your whole disk every time. Create profiles for specific workflows:

  • Default: Scans your current working directory.
  • Work: Scans ~/Work and ~/Clients.
  • Playground: Scans ~/Tmp and ~/Tests.

⚙️ Configuration

cryo stores its configuration in ~/.cryo/profiles/. You can edit them via the CLI or manually.

Example Profile (default.json):

{
  "profileName": "Work",
  "scanPaths": ["/Users/me/projects"],
  "ignoredPaths": ["**/*.log", "**/tmp/**"],
  "archivePath": "/Users/me/cryo_Archives"
}

🤝 Contributing

Contributions are welcome!

  1. Fork the project.
  2. Create your feature branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Add some AmazingFeature').
  4. Push to the branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request.

📝 License

Distributed under the MIT License. See LICENSE for more information.


Made with ❤️ and in