snippet-manager
Version:
Snippet Manager is a simple **command-line tool** for managing code snippets, similar to a **mini Git** for your snippets. You can easily add, list, update, delete, and inject snippets into files. This tool helps you keep your code snippets organized and
129 lines (81 loc) β’ 3.69 kB
Markdown
# Snippet Manager
Snippet Manager is a simple **command-line tool** for managing code snippets, similar to a **mini Git** for your snippets. You can easily add, list, update, delete, and inject snippets into files. This tool helps you keep your code snippets organized and accessible whenever you need them.




## π¦ **Features**
- **Add multi-line snippets** with version control.
- **View snippets** with detailed metadata (version, creation date, etc.).
- **Update snippets** with automatic version bumping.
- **Delete snippets** from the database.
- **Inject snippets into files** via:
- Manual file path input.
- File-tree selection using interactive prompts.
- **JSON database management**βall snippets stored locally for easy access.
## π₯ **Installation**
Install globally using npm:
```bash
npm install -g snippet-manager
```
## π **Usage**
Once installed, you can start using Snippet Manager by running:
```bash
snip
```
or:
```bash
snippet-manager
```
## Screenshots



### π§ **Available Commands:**
1. **Add Snippet**
- Enter a title and a multi-line code snippet. Use `END` on a new line to complete input.
2. **List Snippets**
- Display all saved snippets with version numbers.
3. **View Snippet**
- Select a snippet by index to view its details (title, version, code).
4. **Update Snippet**
- Pick a snippet to edit. Enter the updated code and use `END` to finish input. Version number is bumped automatically.
5. **Delete Snippet**
- Choose a snippet by its index to delete.
6. **Inject Snippet in File**
- Select a snippet and inject it directly into any file using:
- **Manual Path Entry**: Enter the file path manually.
- **File-Tree Selection**: Use arrow keys to browse files interactively.
7. **Exit**
- Quit the tool safely.
## πΌ **Example Usage**
**Adding a Multi-line Snippet:**
```bash
Enter your multi-line code snippet. Type "END" on a new line when you are done:
> console.log('Hello, World!');
> console.log('Snippet Manager is awesome!');
> END
? Snippet Title: Hello World Example
Snippet added successfully!
```
**Updating a Snippet:**
```bash
? Enter snippet index to update: 1
Enter the new multi-line code snippet. Type "END" on a new line when you are done:
> console.log('Updated Hello World');
> END
Snippet updated successfully!
```
## π **Where Your Snippets are Stored**
Snippets are saved in a local JSON database located at:
```bash
~/.snippet-manager/db.json
```
## π **Requirements**
- **Node.js** version 12 or higher
- **npm** installed
## π€ **Contributing**
Feel free to open issues or submit pull requests for improvements. All contributions are welcome!
## π **License**
This project is licensed under the [MIT License](LICENSE).
π If you like this project, give it a star on GitHub!