Utility scripts for cloning, preparing, and managing KeshavSoft repositories.
- Clone multiple repositories
- Auto create workspace folders
- Prevent accidental overwrite
- Optional Git installation
- Auto open workspace
- Modular function-based architecture
- Single-file build output for customers
Build/
│
├── Functions/
│ ├── Ensure-GitInstalled.ps1
│ ├── Get-WorkspaceFolder.ps1
│ ├── Ensure-BaseFolder.ps1
│ ├── Ensure-WorkspaceFolder.ps1
│ ├── Clone-Repos.ps1
│ ├── Install-NpmPackages.ps1
│ └── Open-Workspace.ps1
│
├── dist/
│
├── build.ps1
└── main.ps1Run modular scripts during development.
.\build.ps1This generates:
.\dist\cloneReposAskV1.ps1Customer only needs:
.\cloneReposAskV1.ps1No need to manage multiple files.
Creates folders like:
D:\KeshavSoftRepos\2026-05-11If already exists:
D:\KeshavSoftRepos\2026-05-11(1)
D:\KeshavSoftRepos\2026-05-11(2)after user confirmation.
- PowerShell 7+
- Git
- Node.js (optional for npm install)
Development should be modular.
Delivery should be simple.
This repo uses:
- Small maintainable function files
- Single-file export for distribution
- Parallel cloning
- Logging
- Retry support
- Repo configuration JSON
- Interactive menu system
- Packaging as EXE