GitHunt
SZ

SzaBee13/dev-tools-ps

Dev is a PowerShell function designed to simplify and streamline development workflows on Windows.

Dev PowerShell Utility

GitHub contributors
GitHub release
License
GitHub Actions Workflow Status

GitHub Repo stars
GitHub Issues or Pull Requests
GitHub Issues or Pull Requests

`dev` is a PowerShell function designed to simplify and streamline development workflows on Windows. It allows you to quickly open, create, manage, and version-control projects across multiple development types including web, Python, Discord bots, and more.

Table of Contents

Features

  • Open project folders in VSCode and/or Windows Explorer
  • Create new projects for various frameworks and languages (Vite, Python, Discord bots, C++, etc.)
  • Remove folders easily
  • Clone or pull Git repositories
  • Commit and push changes to Git
  • Initialize Git repositories with optional license
  • List existing project folders by category
  • Save default preferences for opening VSCode and Explorer

Installation

  1. Copy the dev function into your PowerShell profile (usually located at ~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1).

  2. Restart your PowerShell session or run the profile script:

    . $PROFILE
  3. Ensure VSCode (code) and Git are installed and added to your PATH.

Usage

dev <action> [typeOrName] [name] [--code] [--explorer]
  • <action>: The operation you want to perform.
  • [typeOrName]: Depends on action (folder name, project type, root name, or Git URL).
  • [name]: Optional name for new project, commit message, folder, or root subfolder.
  • [--code], [--explorer]: Override default behavior to open VSCode or Explorer.

Commands

Define roots

dev set root web "path-to-ur-folder like D:/web"

Open a folder

dev open <folder-name>

Opens a folder in VSCode and Explorer. Supports subpaths using /.

dev open <root-name> [folder-name]

Opens a configured root path directly, or a folder inside that root.

Create a new project

dev create <type> <project-name>

Remove a folder

dev rm <folder-name>

Removes a folder from the root directories.

Git operations

dev pull [<git-repo-url>] [folder-name]  # Clone or pull a repository
dev release <commit-message> [detailed-message]  # Commit and push
dev local-release <commit-message> [detailed-message]  # Commit locally without pushing
dev init [<git-repo-url>] [license-name] [--branch <branch-name>]  # Initialize Git repo with optional remote and branch override
dev status  # Show git status

List project folders

dev ls <type>

Valid types: web, python, home, discord, alpha-cpp, alpha-web

List configured roots

dev roots

Set default behavior

dev set --code=true/false
dev set --explorer=true/false

Saves default preferences in %appdata%\SzaBee13\dev\config.json.

You can also override these defaults per command:

dev open <folder-name> --code=false
dev create <type> <project-name> --explorer=false

Help

dev help

Displays usage information.

Configuration

The tool stores default preferences in:

%APPDATA%\SzaBee13\dev\config.json

Example:

{
  "pullPath": "D:\\pull",
  "code": true,
  "explorer": true,
  "defaultRoot": "web",
  "defaultBranch": "main"
}

You can toggle these defaults using the dev set command.

defaultBranch is used by dev init when --branch is not provided.

Developed for Windows environments, dev centralizes development tasks to save time and reduce repetitive operations.

Languages

TypeScript35.9%PowerShell30.3%JavaScript22.0%Inno Setup8.4%CSS1.9%HTML1.4%Batchfile0.1%

Contributors

GNU General Public License v3.0
Created October 8, 2025
Updated March 7, 2026
SzaBee13/dev-tools-ps | GitHunt