diff --git a/README.md b/README.md index ee57300..907489a 100644 --- a/README.md +++ b/README.md @@ -1,55 +1,109 @@ -# ๐Ÿงฌ clone-project-manager +# ๐Ÿงฌ Clone Project Manager -A simple tool to help keep your workspace clean and organized! ๐Ÿงนโœจ +**Clone Project Manager** is a simple yet powerful tool to keep your workspace clean and organized. Whether you're using VSCode or NeoVim, this utility helps streamline project management with ease! ๐Ÿงนโœจ -## ๐Ÿš€ Installation +## ๐Ÿš€ Installation Guide ### ๐Ÿ“‹ Requirements -The latest version of this tool doesn't have any specific requirements. However, to take full advantage of its power, we recommend using: +This tool has minimal dependencies, but to maximize its potential, we recommend the following tools for an optimized development workflow: -- VSCode with the `ProjectManager` extension -- and/or NeoVim with the `ProjectMgr` plugin +- **VSCode** with the [Project Manager Extension](https://marketplace.visualstudio.com/items?itemName=alefragnani.project-manager) +- **NeoVim** with the [ProjectMgr Plugin](https://github.com/username/repository) (for NeoVim users, [NVChad](https://nvchad.com) is recommended as a configuration base) -I personally use NVChad as my Neovim configuration. +### ๐Ÿ†• Quick Installation -### ๐Ÿ†• New Installation +#### Option 1: Direct Download -Simply download the `clone` file from the release section and place it in one of your PATH directories. I personally put it in `~/bin/clone`. +Download the latest release of the `clone` binary from the release section and place it in one of your PATH directories (e.g., `~/bin/clone`). -Quick curl script to install it in one step: +Install it in one step with `curl`: ```sh curl -fSLo /usr/local/bin/clone https://github.com/shiipou/clone-project-manager/releases/latest/download/clone-$(uname -s)-$(uname -m) ``` -Alternatively, you can install it using Cargo: +Ensure that `/usr/local/bin` is part of your system's `$PATH`. + +#### Option 2: Cargo Installation + +Alternatively, if you use [Cargo](https://doc.rust-lang.org/cargo/), you can install it directly from crates.io: ```sh -# You can specify the version by adding the --version argument. cargo install clone-project-manager ``` -## ๐Ÿ› ๏ธ How to Use +> *Tip*: You can specify the version by adding the `--version` argument if needed. -Just clone the project as you would with `git clone`: +### โš™๏ธ Configuration + +After installing, ensure the binary is executable by running: + +```sh +chmod +x /usr/local/bin/clone +``` + +## ๐Ÿ› ๏ธ How to Use Clone Project Manager + +Using **Clone Project Manager** is as simple as running `git clone`, but with added organization! Here's how to use it: + +### Basic Usage ```sh clone https://github.com/shiipou/clone-project-manager ``` -If you encounter any issues, you can customize the settings using the arguments listed in `--help`. Use the `--save` option to keep them as default for future runs. +This will: + +1. Clone the repository to an organized folder structure based on the remote server and groups. +2. Automatically add the cloned project to your **VSCode** or **NeoVim** project manager (if installed). -## ๐Ÿค” Why Use This? +### Customizing Settings -This tool helps keep your home directory clean by: +You can pass various arguments to customize the behavior of the tool. To see all available options, use the `--help` flag: -1. Sorting your workspaces by git remote server and groups -2. Automatically adding projects to your [VSCode Project Management](https://marketplace.visualstudio.com/items?itemName=alefragnani.project-manager) +```sh +clone --help +``` -Here's a visual representation of how it organizes your projects: +#### Persistent Customization + +You can set default options for future runs by using the `--save` flag. For example: + +```sh +clone https://github.com/shiipou/clone-project-manager --save +``` + +This will save the current configuration as default for future usage. + +## ๐Ÿค” Why Use Clone Project Manager? + +This tool offers several advantages over standard `git clone`: + +1. **Workspace Organization**: Automatically organizes your cloned repositories into structured directories based on the git remote server and other groupings. +2. **Integration with Project Managers**: Instantly adds cloned projects to your favorite project manager tools like **VSCode** and **NeoVim**, making project switching a breeze. +3. **Automation**: Reduces manual steps and keeps your development environment clean and efficient. + +## ๐Ÿ“ธ Visual Representation + +Here's an example of how Clone Project Manager helps organize your projects in VSCode and NeoVim: + +### VSCode Project Organization Example ![VSCode Project organization example](https://github.com/shiipou/clone-project-manager/assets/38187238/331cca5a-9a36-4a17-bb61-133f06db9e5d) + +### NeoVim Project Organization Example + ![NVim Project organization example](https://github.com/user-attachments/assets/3355edc5-3ac8-4d89-872f-ec11698ff876) -Give it a try and experience a more organized development environment! ๐ŸŽ‰ +## ๐Ÿค Contributions + +We welcome contributions from the community! If you encounter any bugs or have suggestions for new features, feel free to open an issue or a pull request. + +## ๐Ÿ”— Useful Links + +- [VSCode Project Manager Extension](https://marketplace.visualstudio.com/items?itemName=alefragnani.project-manager) +- [NVChad Configuration](https://nvchad.com) +- [Cargo Installation Guide](https://doc.rust-lang.org/cargo/getting-started/installation.html) + +Give **Clone Project Manager** a try and enjoy a cleaner, more organized development environment! ๐ŸŽ‰