Simplify Your Development Workflow

Dev is a powerful PowerShell utility that streamlines your development process on Windows. Quickly open, create, manage, and version-control projects across multiple frameworks and languages.

Powerful Features

Open Projects

Open project folders in VSCode and/or Windows Explorer with a single command.

Create Projects

Create new projects for Vite, Python, Discord bots, C++, and more frameworks.

Git Integration

Clone, pull, commit, and push repositories directly from your command line.

Configure Roots

Set up default root paths for your project types and manage configurations.

List Projects

View all your existing project folders organized by category.

Custom Preferences

Save default preferences for opening VSCode and Windows Explorer.

Installation

Inno Setup

Recommended - Easy installer for Windows

Download Installer

Chocolatey

Package manager for Windows

choco install dev-ps-utils -y

Note: Package updates may be delayed

From Source

Build it yourself from GitHub

View Instructions

Quick Setup

1After installation, reload your PowerShell profile:

. $PROFILE

2Test the installation:

dev help

3Set up your first root directory:

dev set root web "D:/my-projects"

Prerequisites

PowerShell 5.1+ or PowerShell 7+
VS Code in PATH
Git in PATH

Quick Command Reference

$ dev set root <type> <path>

Define a new root directory for a project type

Example: $ dev set root web "D:/my-projects"
$ dev open <folder-name>

Open a folder in VSCode and Explorer

Example: $ dev open my-project
$ dev open <root> [folder-name]

Open a folder from a configured root

Example: $ dev open web my-project
$ dev create <type> <project-name>

Create a new project of specified type

Example: $ dev create vite my-app
$ dev rm <folder-name>

Remove a folder

Example: $ dev rm old-project
$ dev pull [repo-url] [folder-name]

Clone or pull a Git repository

Example: $ dev pull https://github.com/user/repo
$ dev release <message> [details]

Commit and push changes

Example: $ dev release "Fix bug" "Detailed changelog"
$ dev local-release <message>

Commit locally without pushing

Example: $ dev local-release "Work in progress"
$ dev list [root-name]

List all projects or projects in a root

Example: $ dev list web