Skip to content

๐Ÿš€ gh-lazy: Your productive GitHub CLI superpowers! Automate all the things, because life's too short for manual setups. ๐Ÿ˜ด๐Ÿ’ป

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.md
Notifications You must be signed in to change notification settings

igorcosta/gh-lazy

Repository files navigation

๐Ÿš€ Lazy: Your productive gh and git superpowers

Awesome GitHub stars License

Because life's too short for manual setups and you don't have time to automate things!

๐ŸŽญ What's in a Name?

Lightweight
Automated
Zero-effort
Yielding-results

๐ŸŒŸ Overview

Lazy is your secret weapon for turbocharging git, GitHub CLI commands. Say goodbye to tedious manual configurations, combined commands and hello to lightning-fast, automated awesomeness! We're so lazy that we took advantage of the existing awesome github cli tool and beautified it with laziness.

๐Ÿš€ Features That'll Make You Go "Wow!"

  • ๐Ÿƒโ€โ™‚๏ธ Sprint through GitHub issue or issueS and milestone creation, deletion
  • ๐Ÿค– Automagically set up GitHub Projects (v2)
  • ๐Ÿง™โ€โ™‚๏ธ Customize task templates with the power of JSON
  • ๐Ÿงจ Nuke GitHub projects and issues with ease
  • ๐Ÿ”— Seamlessly integrate with GitHub CLI like a boss
  • Private LLM interface for Ollama or Llama-3.2 2b param

๐Ÿ› ๏ธ Requirements

Before you embark on your Lazy journey, make sure you have:

  1. Your laziness!
  2. Homebrew installed (because we're fancy like that)
  3. A GitHub account (you're not living under a rock, are you?)
  4. A valid GitHub token with appropriate permissions (we'll show you how)
  5. Basic knowledge of JSON (don't worry, it's not rocket science)
  6. A burning desire to automate ALL THE THINGS!
  7. Optional: If you have ollama installed, configure an LLM for more awesome stuff!!!

๐Ÿ—๏ธ Installation

Let's get this party started:

  1. Fire up your terminal (and try not to feel like a hacker)

  2. Install the GitHub CLI (if you haven't already):

    brew install gh
  3. Install the Lazy extension (prepare to be amazed):

    gh extension install lazy
  4. Do a little victory dance ๐Ÿ•บ๐Ÿ’ƒ

๐ŸŽฎ Usage

Time to unleash the power of Lazy:

Creating Projects, Milestones, and Issues

gh lazy create --repo "your-awesome-username/your-cool-repo" --tasks "path/to/your/amazing/tasks.json"

๐ŸŽ›๏ธ Available Options for create

Lazy - Your productive gh and git superpowers 
Usage: gh lazy create [flags]

Flags:
  -r, --repo string         Your repository's name (e.g., 'cool-dev/awesome-project')
  -t, --tasks string        Path to your magical tasks JSON file
  -f, --token-file string   Path to the file containing your GitHub token (default ".token")

Example:
  gh lazy create --repo cool-dev/awesome-project --tasks ./world-domination-plan.json

๐Ÿงจ Nuking a Project

Delete a GitHub project and optionally all linked issues.

gh lazy nuke [--projectid <project_id_or_url>] [--all] [--dry-run]
  • If you provide the --projectid (-p) flag, the command will delete the specified project.

  • If you omit the --projectid flag, the tool will:

    1. List all your available projects and allow you to select one interactively.
    2. Ask if you want to perform a dry run first.
    3. Ask if you want to delete all associated issues.

๐ŸŽ›๏ธ Available Options for nuke

Usage: gh lazy nuke [flags]

Flags:
  -p, --projectid string   Project ID or URL to nuke
  -a, --all                Delete all issues linked to the project
      --dry-run            Show what would happen without making changes

Example:
  gh lazy nuke --projectid https://github.com/users/yourusername/projects/1 --all --dry-run

Examples:

  • Interactive Mode:

    gh lazy nuke

    This will prompt you to select a project and configure options interactively.

  • Dry Run Without Deleting Issues:

    gh lazy nuke --projectid https://github.com/users/yourusername/projects/1 --dry-run
  • Dry Run With Deleting Issues:

    gh lazy nuke --projectid 1 --all --dry-run
  • Actual Deletion:

    gh lazy nuke --projectid 1 --all
  • Need to prepare your prompt for your favourite LLM?

gh lazy codeprompt "given this project, I need to modify my version.go file, help me out" --system-prompt . --ignore-gitignore --ignore "go.sum" --ignore "*.md" --ignore "gh-lazy" -o prompt.txt 

๐Ÿง™โ€โ™‚๏ธ How It Works (Warning: Mind-Blowing Content Ahead)

  1. Lazy reads your JSON file faster than you can say "automation."
  2. It creates milestones and issues in your GitHub repo like a seasoned project manager on steroids.
  3. A shiny new GitHub Project (v2) materializes out of thin air.
  4. Issues are automagically added to the project, leaving you more time for coffee breaks.
  5. Need to clean up? Use the nuke command to delete projects and issues effortlessly.

๐Ÿค Contributing (Join the Lazy Revolution)

Want to make Lazy even more awesome? Here's how:

  1. Fork the repo (and star it while you're at it).
  2. Create a new branch (git checkout -b feature/mind-blowing-idea).
  3. Commit your changes (git commit -am 'Add some mind-blowing feature').
  4. Push to the branch (git push origin feature/mind-blowing-idea).
  5. Create a new Pull Request and wait for the applause.

๐Ÿ“œ License

This project is licensed under the MIT License - see the LICENSE.md file for details. (TL;DR: Do whatever you want, just don't blame us if your computer gains sentience)


๐Ÿ†˜ Support

Stuck? Need help? Just want to chat about the meaning of life?

  • Open an issue in our GitHub repo.

Remember: Stay Lazy, Stay Productive! ๐Ÿ˜ด๐Ÿ’ป

๐ŸŽ‰ Special Thanks (aka The Lazy Hall of Fame) ๐Ÿ†

I've done this due to the community efforts, making it easy like a breeze. ๐ŸŒฌ๏ธ Because why work hard when you can work smart? ๐Ÿง ๐Ÿ’ก

Special thanks for the full list of lazy legends who made this possible! ๐Ÿฆธโ€โ™‚๏ธ๐Ÿฆธโ€โ™€๏ธ

Click here for a sneak peek of our gratitude (and some reactions)! ๐Ÿ‘€
  • To the coffee that fueled this project: โ˜• (๐Ÿ‘ x 1000)
  • To GitHub Copilot, our silent partner: ๐Ÿฅ‡ (๐Ÿ™ x 99999999)
  • To our rubber duck debuggers: ๐Ÿฆ† (โค๏ธ x 42)
  • To Cmd+C and Cmd+V, the real MVPs: ๐Ÿ… (๐Ÿš€ x โˆž)

Remember, in the world of gh-lazy, we don't just stand on the shoulders of giants. We take the elevator! ๐Ÿ›—๐Ÿ˜Ž

P.S. If you're not lazy enough to click the link above, you're probably using this tool wrong. Just saying! ๐Ÿ˜‰

About

๐Ÿš€ gh-lazy: Your productive GitHub CLI superpowers! Automate all the things, because life's too short for manual setups. ๐Ÿ˜ด๐Ÿ’ป

Topics

Resources

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.md

Stars

Watchers

Forks

Packages

No packages published

Languages