Skip to content

SzaBee13/dev-tools-ps

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.

About

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

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors