Nodev is a macOS desktop application for managing Node.js development projects. Key features: project discovery, server management, custom .nodev domains, session restoration, dependency management, version management, environment variables. Target audience: Node.js developers on macOS managing multiple projects. Nodev bundles Node.js v20.18.0 and supports frameworks like Next.js, Nuxt, NestJS, Express, Vite, React, Remix, Astro, and Svelte. Package managers supported: npm, yarn, pnpm, bun. Requires macOS 12 (Monterey) or later.

Project Discovery

How Nodev automatically finds and identifies your projects.

How It Works

When you add a folder to Nodev, it recursively scans for package.json files. Each valid package.json represents a Node.js project that Nodev can manage.

Folder Structure: Nodev preserves your folder hierarchy and uses project folder names as identifiers.

Framework Detection: By analyzing dependencies and configuration files, Nodev identifies which framework each project uses.

Package Manager: The presence of lock files (package-lock.json, yarn.lock, etc.) determines the package manager.

Supported Frameworks

Nodev automatically detects these popular frameworks:

Next.jsNuxtNestJSExpressViteReactRemixAstroSvelte
Even if your framework isn't explicitly listed, Nodev can likely manage it. Any project with a package.json and a dev script can be started.

Package Manager Detection

Nodev detects your package manager from lock files:

npm:package-lock.json
yarn:yarn.lock
pnpm:pnpm-lock.yaml
bun:bun.lockb
Nodev uses the detected package manager for all operations including installing dependencies and starting servers.

Project Display

Detected projects appear in the Nodev sidebar with:

  • • Project name (from folder name or package.json)
  • • Framework icon and badge
  • • Current status (stopped, starting, running)
  • • Port number (when configured)
  • • Custom domain (when assigned)

Troubleshooting

Project Not Detected

Ensure your project has a package.json file in the root folder. Projects without package.json are not recognized as Node.js projects.

Wrong Framework Detected

You can override the detected framework in project settings. This is useful for custom frameworks or when detection fails.

Nested Projects

Nodev detects projects at any depth in your folder structure. Each package.json creates a separate project entry.

Nodev - Predictable local development for multi-project teams | Product Hunt