30 open-source projects similar to github/hub, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Github Hub alternative.
Hub is a terminal-based GitHub API client and command-line wrapper that extends standard git version control with remote project management functionality. It serves as an interface to programmatically execute GitHub operations and simplify the interaction between local repositories and remote resources. The tool provides specialized capabilities for synchronizing forks with upstream repositories and managing GitHub-specific assets including pull requests, issues, and releases. It also enables the creation of code gists and allows users to open specific repository files in a web browser direct
GitUp is a graphical user interface client and version control tool for managing Git repositories. It provides a visual environment for browsing repository content, editing history, and performing version control operations. The application features an interactive commit graph visualizer for navigating branching and merging history. It includes a dedicated history editor that allows for the visual manipulation of the project timeline, including the ability to reorder, split, and roll back commits. The tool covers diff analysis through side-by-side file comparisons and high-speed content sear
git-extras is a collection of command line utilities that extend the functionality of the Git version control system. It provides a suite of shortcuts and additional commands for history manipulation, remote management, repository analysis, and workflow automation. The project distinguishes itself by offering deep integration with hosting providers to manage pull requests and forks, alongside advanced history tools for obliterating sensitive files and rewriting author metadata. It also includes a specialized interactive shell that allows users to execute commands without repeating the binary
This project is a graphical desktop client for managing version control repositories. It provides a visual interface that translates complex command-line operations into intuitive workflows for tracking local code changes and synchronizing them with remote servers. The application distinguishes itself through integrated credential management and network configuration tools. It utilizes secure authentication flows to handle remote service logins and includes a network layer that automatically detects and applies system-wide proxy settings. These capabilities ensure that version control operati
Lazygit is a terminal-based user interface designed to simplify version control operations through a keyboard-driven workflow. It functions as a visual abstraction layer that bridges native commands with an interactive environment, allowing users to manage repository history, branches, and commit workflows without relying solely on manual command-line input. The tool distinguishes itself by automating complex version control tasks that typically require multiple manual steps. It provides specialized interfaces for interactive rebasing, commit history amendment, and binary search-based regress
:octocat: Open source github contribution stats on your Mac OS X Menu Bar
This project is a general-purpose command-line filter that provides an interactive interface for processing standard input streams. It enables real-time fuzzy searching, data selection, and transformation, allowing users to navigate complex information or file systems directly within their terminal. By utilizing a pipe-oriented architecture, it integrates into existing shell pipelines and workflows to facilitate efficient data exploration. What distinguishes this tool is its highly extensible, event-driven design that allows for deep integration with external processes. It supports asynchrono
Bit is a command line interface and workflow wrapper for Git that simplifies repository management through high-level commands and automated synchronization. It functions as an interactive shell tool that reduces manual operations by combining staging, committing, and pushing into streamlined workflows. The tool distinguishes itself by integrating directly with version control providers to allow users to view and check out pull requests from the terminal. It also features an intelligent completion system that provides contextual tab-completion and flag suggestions for file paths, branch names
Lark CLI is a terminal-based tool designed for automating tasks and managing resources across the Lark and Feishu productivity ecosystem. It functions as a cloud workspace automator and REST API client, providing a command line interface to programmatically manage organizational documents, calendars, emails, and tasks. The project distinguishes itself through an AI agent skill framework that allows for the integration and deployment of both bundled and custom skills. It features an identity-aware execution context that enables switching between user and bot identities, and employs a sidecar-b
This project is a community-driven knowledge base that serves as a comprehensive guide for mastering version control operations and platform-specific workflows. It functions as a developer productivity resource, consolidating essential information on command-line operations, repository management, and advanced interface techniques into a single, version-controlled document. The guide distinguishes itself by providing actionable insights into platform-specific automation and navigation. It covers the use of keyboard shortcuts to accelerate daily tasks, the application of advanced search syntax
Kilocode is an autonomous engineering platform designed to orchestrate AI agents for complex software development tasks. It functions as a comprehensive system for automating coding, testing, and repository management by integrating directly with your codebase and terminal. The platform provides a unified gateway for model orchestration, allowing for the management of agentic workflows, event-driven automation, and persistent session state across distributed development environments. The platform distinguishes itself through its federated task management and policy-based access control, which
forgit is a shell-based interactive CLI wrapper that uses a fuzzy finder to transform Git output into selection menus. It functions as a workflow accelerator and history browser, replacing manual command entry with searchable interfaces for version control operations. The tool provides specialized managers for Git worktrees and an interactive history browser for visualizing commit logs, reflogs, and blame data. It differentiates itself by wrapping native Git subcommands in selection logic, allowing users to pick targets before executing final operations. Its capabilities cover interactive fi
sqlx is a set of extensions for the Go database/sql package that reduces boilerplate code by automating the mapping of database query results directly into structs and slices. It provides a wrapper around standard database types to eliminate manual row scanning and repetitive error handling. The project distinguishes itself through named parameter binding and query placeholder rebinding, which translate generic markers into driver-specific symbols. It also enables dynamic SQL execution by allowing the application to read and execute SQL statements directly from the filesystem. The library co
Wuzz is an interactive command line HTTP client and request inspector designed for capturing, reviewing, and analyzing outgoing network calls and their payloads. It functions as a terminal-based tool for debugging API issues and testing web endpoints. The tool provides specialized filtering for response bodies, using regular expressions and format-specific query syntaxes tailored for JSON and HTML data. It allows for the persistence of captured requests and responses to disk to facilitate the reproduction of network issues and offline analysis. User settings and default request behaviors are
Peco is an interactive text filter and fuzzy finder for the terminal. It serves as a terminal user interface selection tool that filters standard input in real-time using fuzzy matching and regular expressions. The tool preserves and renders ANSI color escape sequences from piped input streams while performing matching logic on plain-text versions. It supports multi-stage filtering, allowing users to freeze result sets to create a new base for subsequent refinements. Capability areas include advanced search filtering with negative matching, multi-item selection, and the ability to pipe selec
Fork of Pieter's nice git GUI for OS X. Includes branch/tag sidebar and various fixes. Current development focus is on removing legacy git command line usage in favour of libgit2 and objective-git.
Task is a YAML-based task runner and build tool used to define and automate development workflows. It functions as a dependency-based build system and cross-platform task automator, allowing users to execute shell commands across different operating systems using a declarative configuration file. The project operates as an incremental build tool, utilizing file fingerprints and checksums to track state and avoid redundant work by determining if tasks are up to date. It manages execution via a dependency graph to ensure prerequisites are completed before target commands run. The system includ
ctop is a terminal-based dashboard utility designed for monitoring and managing containerized applications. It provides a real-time interface for tracking the operational status and resource utilization of multiple containers simultaneously, offering a centralized view of system health directly within a terminal emulator. The tool distinguishes itself by integrating directly with the container runtime to provide both high-level infrastructure overviews and deep inspection capabilities. Users can organize their dashboard through persistent filtering and sorting preferences, ensuring that perfo
GoReleaser is a release automation tool for building, packaging, and distributing Go binaries across multiple platforms and architectures. It functions as a cross-compilation build pipeline and binary distribution orchestrator that manages the end-to-end lifecycle of versioned software releases. The tool utilizes a declarative configuration pipeline based on a YAML definition file to automate the Go toolchain. It links Git tags to the compilation process, allowing for automated version tagging and the injection of build metadata and version strings into binaries via linker flags. Its capabil
GitButler is a desktop application designed for managing Git version control workflows. It provides a visual interface for organizing concurrent development tasks, allowing users to work on multiple features or bug fixes simultaneously within a single repository without the need for manual context switching. The application utilizes a virtual file system overlay and in-memory staging to track granular file modifications independently of the underlying version control system. It features a conflict isolation engine that breaks down complex merge conflicts into smaller, manageable segments, and
Poetry is a comprehensive dependency manager and packaging tool for Python projects. It functions as a configuration engine that resolves complex dependency graphs, manages isolated virtual environments, and ensures reproducible builds through deterministic lock file generation. By centralizing project metadata and build requirements into a single configuration file, it provides a unified workflow for managing the entire lifecycle of a Python codebase. The project distinguishes itself through its constraint-based solver, which evaluates environment markers and version requirements to maintain
This project is a GitHub pull request and issue management extension that integrates version control workflows directly into the code editor. It functions as a combined code review tool and issue tracker, allowing users to manage remote repository data without leaving their development environment. The extension supports both GitHub and GitHub Enterprise accounts. It distinguishes itself by enabling a code-to-issue workflow, where users can automatically generate trackable GitHub issues from todo comments and markers written within the source code. The toolset covers peer review functionalit
gh-dash is a terminal user interface (TUI) dashboard and API client for monitoring and managing GitHub pull requests, issues, and notifications. It serves as a repository manager and git workflow tool, allowing users to track project activity and execute development lifecycle tasks directly from the command line. The project distinguishes itself through a highly configurable layout and keybinding system. It uses custom filter templates to define specific subsets of activity and allows users to associate remote repositories with local filesystem directories to automate branch checkouts. The t
This project is an autonomous AI software engineering orchestrator and development loop manager. It implements a system for managing AI coding agents that execute iterative development cycles, processing technical requirements through a persistent task queue based on priority and dependencies. The system synchronizes development progress with GitHub by converting issues and comments into actionable plans and automating pull requests and status updates. It provides a secure execution layer by running coding operations within an isolated sandbox environment to protect the host file system. To
posh-git is a PowerShell extension that provides a Git prompt and a set of toolsets for enhancing terminal productivity. It integrates Git status and branch information directly into the PowerShell command prompt and provides a toolkit for customizing the appearance, colors, and path formatting of the shell session. The project distinguishes itself by providing command line autocompletion for Git commands, branch names, and file paths. It also includes an SSH agent manager with wrapper commands to start, stop, and monitor the status of secure shell agent processes. The software covers broade
git-fire is a command line plugin and emergency backup tool for Git. It functions as a workflow automator that preserves local work-in-progress and stashes on a remote server to prevent data loss during urgent interruptions. The tool automates the process of staging, committing, and pushing the current state to a new remote branch. By using branch-isolated pushing and converting local stashes into permanent commits, it protects uncommitted changes without creating merge conflicts on the main development line. It handles workspace preservation by anchoring to the repository root and wrapping
GitPython is a Python library that provides a programmatic interface for interacting with Git repositories. It functions as a version control API and a wrapper that allows for the execution of Git commands and the manipulation of repository commits, branches, and working trees. The project acts as a Git object manipulator, allowing users to inspect and modify internal data structures and blobs. It provides a structured layer for executing command line instructions with integrated error handling and data retrieval. The library covers a wide range of capabilities including repository initializ
This project is a community-curated directory of REST and GraphQL service endpoints designed to assist developers in discovering and integrating third-party data sources. It functions as a centralized registry where external services are organized by domain to facilitate rapid software prototyping and application development. The registry relies on a peer-reviewed contribution model, utilizing distributed version control to manage updates and ensure the accuracy of listed endpoints. To maintain high data quality, the project employs schema-based validation for all incoming submissions and com
bash-git-prompt is a Bash shell extension and prompt customizer that integrates real-time Git status indicators directly into the terminal. It functions as a shell theme that displays branch names, commit divergence, and file status markers within the command line interface. The project distinguishes itself through a hierarchical configuration system that allows for directory-specific overrides of global settings. It includes performance tuning options to maintain shell responsiveness in large repositories by selectively disabling expensive operations such as remote fetching or untracked file