Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alexis-moins/pm
Manage your projects the easy way 📦
https://github.com/alexis-moins/pm
bash cli gum projects tmux vscode
Last synced: 4 days ago
JSON representation
Manage your projects the easy way 📦
- Host: GitHub
- URL: https://github.com/alexis-moins/pm
- Owner: alexis-moins
- License: mit
- Created: 2023-07-12T20:06:53.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-09-09T16:01:33.000Z (2 months ago)
- Last Synced: 2024-09-09T19:22:32.625Z (2 months ago)
- Topics: bash, cli, gum, projects, tmux, vscode
- Language: Shell
- Homepage:
- Size: 119 KB
- Stars: 8
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![Version](https://img.shields.io/badge/version-1.8.3-blue.svg)
`pm` is a bash script allowing users to rapidly list, create and navigate between your projects. It integrate with different backends (tmux, vscode) for convenience.
## Prerequisites
- bash 4.0 or higher
- [gum](https://github.com/charmbracelet/gum)
- tmux (optional)
- git## 🧰 Installation
Clone the repository
```bash
git clone [email protected]:alexis-moins/pm.git ~/.pm
```Go into the install directory and execute the [install](install.sh) script:
```bash
./install.sh
```The install script copies the `pm` script in the `~/.local/bin` directory (you can also change the destination by passing it as an argument to the install script).
## 🌱 Quick Start
After installing, you can follow these steps to quickly see how it works:
```bash
# Add a new space
pm space add personal# You can then create new projects in this space
pm new -s personal -n react-app# pm supports project creation using templates
pm new -s personal -n react-app -t vite# But also creating your own one
pm template new python-poetry# Opening a project is simple
pm open personal/react-app# But using a different backend is also possible
pm open -s personal -n react-app -b vscode# You can even clone github repositories directly
pm clone [email protected]:alexis-moins/dot.git -s work -n dot
```## 🚦 Usage
```
$ pmpm - manage your projects the easy way
Usage:
pm COMMAND
pm [COMMAND] --help | -h
pm --version | -vCommands:
completions Generate bash completions
cd Open pm home in a new shell
space Add, list and filter spaces
template Template related commands
backend Backend related commandsProject Commands:
new Create a new empty project
clone Clone a remote git repository
open Open a project
filter Filter projects
list List projectsOptions:
--help, -h
Show this help--version, -v
Show version numberEnvironment Variables:
PM_HOME
Directory where the projects will be managed
Default: ~/devPM_BACKEND
Name of the backend used to open projects
Default: tmuxPM_BACKEND_SHOW_CMD
Command used to show backends
Default: catPM_TEMPLATE_SHOW_CMD
Command used to show templates
Default: cat
```