{"id":50932755,"url":"https://github.com/xscriptor/gitnapse","last_synced_at":"2026-06-17T06:02:24.955Z","repository":{"id":353652602,"uuid":"1219384880","full_name":"xscriptor/gitnapse","owner":"xscriptor","description":"Explore Git from a new perspective, through a different lens, in your terminal.","archived":false,"fork":false,"pushed_at":"2026-06-15T12:59:02.000Z","size":220,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-15T14:25:55.452Z","etag":null,"topics":["github","github-api","github-config","github-developer","github-developer-program","gitnapse","xscriptor"],"latest_commit_sha":null,"homepage":"https://dev.xscriptor.com","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xscriptor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-23T20:28:40.000Z","updated_at":"2026-04-26T08:42:06.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/xscriptor/gitnapse","commit_stats":null,"previous_names":["xscriptor/gitnapse"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/xscriptor/gitnapse","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xscriptor%2Fgitnapse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xscriptor%2Fgitnapse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xscriptor%2Fgitnapse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xscriptor%2Fgitnapse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xscriptor","download_url":"https://codeload.github.com/xscriptor/gitnapse/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xscriptor%2Fgitnapse/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34435981,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-17T02:00:05.408Z","response_time":127,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github","github-api","github-config","github-developer","github-developer-program","gitnapse","xscriptor"],"created_at":"2026-06-17T06:02:24.201Z","updated_at":"2026-06-17T06:02:24.948Z","avatar_url":"https://github.com/xscriptor.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eGitNapse\u003c/h1\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://raw.githubusercontent.com/xscriptor/xassets/main/github/gitnapse/gitnapse.svg\" alt=\"GitNapse Icon\" /\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"right\"\u003e\n  \u003cp\u003e\u003cem\u003eExplore \u003cstrong\u003eGit\u003c/strong\u003e from a new \u003cstrong\u003eperspective\u003c/strong\u003e, through a \u003cstrong\u003edifferent lens\u003c/strong\u003e, in your terminal.\u003c/em\u003e\u003c/p\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/license-MIT-blue.svg\" alt=\"MIT License\" /\u003e \u003cimg src=\"https://img.shields.io/badge/rust-1.84%2B-orange.svg\" alt=\"Rust 1.84+\" /\u003e \u003cimg src=\"https://img.shields.io/github/v/release/xscriptor/gitnapse?include_prereleases\u0026label=release\" alt=\"GitHub Release\" /\u003e \u003cimg src=\"https://github.com/xscriptor/gitnapse/actions/workflows/ci.yml/badge.svg\" alt=\"CI\" /\u003e \u003cimg src=\"https://img.shields.io/badge/platform-linux%20%7C%20macos%20%7C%20windows-lightgrey.svg\" alt=\"Platform\" /\u003e\n\u003c/div\u003e\n\n\u003cdiv id=\"content\"\u003e\u003c/div\u003e\n\u003ch2 align=\"center\"\u003eContents\u003c/h2\u003e\n\u003cul\u003e\n  \u003cli\u003e\u003ca href=\"#previews\"\u003ePreviews\u003c/a\u003e\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"#overview\"\u003eOverview\u003c/a\u003e\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"#status\"\u003eCurrent Status\u003c/a\u003e\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"#quick-start\"\u003eQuick Start\u003c/a\u003e\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"#remote-install\"\u003eRemote Install / Uninstall\u003c/a\u003e\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"#release-automation\"\u003eRelease Automation\u003c/a\u003e\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"#docs\"\u003eDocumentation\u003c/a\u003e\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"#about-x\"\u003eX\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ch2 id=\"previews\" align=\"center\"\u003ePreviews\u003c/h2\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/xscriptor/xassets/main/github/gitnapse/previews/preview00.png\" alt=\"GitNapse Preview 00\" /\u003e\n\u003c/div\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eMore Previews...\u003c/b\u003e\u003c/summary\u003e\n\u003cbr /\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/xscriptor/xassets/main/github/gitnapse/previews/preview01.png\" alt=\"GitNapse Preview 01\" /\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/xscriptor/xassets/main/github/gitnapse/previews/preview02.png\" alt=\"GitNapse Preview 02\" /\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/xscriptor/xassets/main/github/gitnapse/previews/preview03.png\" alt=\"GitNapse Preview 03\" /\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/xscriptor/xassets/main/github/gitnapse/previews/preview04.png\" alt=\"GitNapse Preview 04\" /\u003e\n\u003c/div\u003e\n\n\u003c/details\u003e\n\n\u003ch2 id=\"overview\" align=\"center\"\u003eOverview\u003c/h2\u003e\n\u003cp\u003e\n  GitNapse is a Rust-first terminal application for exploring GitHub repositories from the command line.\n  It provides repository discovery, branch-aware tree navigation, file previews, syntax-aware highlighting,\n  clone workflows, and single-file download capabilities.\n\u003c/p\u003e\n\n\u003ch2 id=\"status\" align=\"center\"\u003eCurrent Status\u003c/h2\u003e\n\u003cul\u003e\n  \u003cli\u003eRust TUI stack based on \u003ccode\u003eratatui\u003c/code\u003e + \u003ccode\u003ecrossterm\u003c/code\u003e.\u003c/li\u003e\n  \u003cli\u003eGitHub API integration for search, branches, tree, file content, and auth-user validation.\u003c/li\u003e\n  \u003cli\u003eToken authentication through \u003ccode\u003eGITHUB_TOKEN\u003c/code\u003e or secure local storage.\u003c/li\u003e\n  \u003cli\u003eRepository tree exploration with lazy loading and branch switching.\u003c/li\u003e\n  \u003cli\u003ePreview pane with focus support, keyboard/mouse scroll, and syntax-aware display.\u003c/li\u003e\n  \u003cli\u003eIn-app file download modal and CLI file download command.\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003ch2 id=\"quick-start\" align=\"center\"\u003eQuick Start\u003c/h2\u003e\n\u003cpre\u003e\u003ccode class=\"language-bash\"\u003egitnapse\ngitnapse run --query \"xscriptor\" --page 1 --per-page 30 --cache-ttl-secs 900\ngitnapse auth set\ngitnapse auth oauth login --client-id YOUR_OAUTH_CLIENT_ID --scope read:user --scope repo\n\u003c/code\u003e\u003c/pre\u003e\n\n\u003ch2 id=\"remote-install\" align=\"center\"\u003eRemote Install / Uninstall\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eLinux / macOS (curl):\u003c/strong\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode class=\"language-bash\"\u003ecurl -fsSL https://raw.githubusercontent.com/xscriptor/gitnapse/main/scripts/install.sh | bash -s -- --action install\ncurl -fsSL https://raw.githubusercontent.com/xscriptor/gitnapse/main/scripts/install.sh | bash -s -- --action uninstall --cleanup\n\u003c/code\u003e\u003c/pre\u003e\n\n\u003cp\u003e\u003cstrong\u003eLinux / macOS (wget):\u003c/strong\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode class=\"language-bash\"\u003ewget -qO- https://raw.githubusercontent.com/xscriptor/gitnapse/main/scripts/install.sh | bash -s -- --action install\nwget -qO- https://raw.githubusercontent.com/xscriptor/gitnapse/main/scripts/install.sh | bash -s -- --action uninstall --cleanup\n\u003c/code\u003e\u003c/pre\u003e\n\n\u003cp\u003e\u003cstrong\u003eWindows 11 PowerShell:\u003c/strong\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode class=\"language-powershell\"\u003eirm https://raw.githubusercontent.com/xscriptor/gitnapse/main/scripts/install.ps1 | iex\n\u0026amp; ([scriptblock]::Create((irm https://raw.githubusercontent.com/xscriptor/gitnapse/main/scripts/install.ps1))) -Action uninstall -Cleanup\n\u003c/code\u003e\u003c/pre\u003e\n\n\u003ch2 id=\"release-automation\" align=\"center\"\u003eRelease Automation\u003c/h2\u003e\n\u003cp\u003e\n  GitHub Actions release pipeline is available in \u003ccode\u003e.github/workflows/release.yml\u003c/code\u003e.\n  Push a version tag like \u003ccode\u003ev1.0.0\u003c/code\u003e to build Windows, Linux (Ubuntu/Arch/Fedora), and macOS assets and publish them in GitHub Releases.\n\u003c/p\u003e\n\n\u003ch2 id=\"docs\" align=\"center\"\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n  \u003cli\u003e\u003ca href=\"./docs/OVERVIEW.md\"\u003e\u003ccode\u003eOVERVIEW.md\u003c/code\u003e\u003c/a\u003e - complete feature list and capabilities\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./docs/INSTALLATION.md\"\u003e\u003ccode\u003eINSTALLATION.md\u003c/code\u003e\u003c/a\u003e - full install and uninstall by platform\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./docs/REMOTE_INSTALLATION.md\"\u003e\u003ccode\u003eREMOTE_INSTALLATION.md\u003c/code\u003e\u003c/a\u003e - remote scripts, parameters, and examples\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./docs/USAGE.md\"\u003e\u003ccode\u003eUSAGE.md\u003c/code\u003e\u003c/a\u003e - full command and in-app usage guide\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./docs/OAUTH_AUTHENTICATION.md\"\u003e\u003ccode\u003eOAUTH_AUTHENTICATION.md\u003c/code\u003e\u003c/a\u003e - OAuth login flows with octocrab and secure setup\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./docs/THEME_CONFIG.md\"\u003e\u003ccode\u003eTHEME_CONFIG.md\u003c/code\u003e\u003c/a\u003e - theme file format and customization\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./docs/COLLABORATIVE_SECTION.md\"\u003e\u003ccode\u003eCOLLABORATIVE_SECTION.md\u003c/code\u003e\u003c/a\u003e - branch protection, PR workflow, and release publishing collaboration guide\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./docs/RELEASE_WORKFLOW.md\"\u003e\u003ccode\u003eRELEASE_WORKFLOW.md\u003c/code\u003e\u003c/a\u003e - release build/publish workflow and versioning commands\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./docs/ARCHITECTURE.md\"\u003e\u003ccode\u003eARCHITECTURE.md\u003c/code\u003e\u003c/a\u003e - technical architecture details\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./docs/IMPLEMENTATION_LOG.md\"\u003e\u003ccode\u003eIMPLEMENTATION_LOG.md\u003c/code\u003e\u003c/a\u003e - implementation materialization log\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./docs/tests/README.md\"\u003e\u003ccode\u003edocs/tests/README.md\u003c/code\u003e\u003c/a\u003e - test and security audit documentation index\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./SECURITY.md\"\u003e\u003ccode\u003eSECURITY.md\u003c/code\u003e\u003c/a\u003e - vulnerability reporting and response policy\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./CODE_OF_CONDUCT.md\"\u003e\u003ccode\u003eCODE_OF_CONDUCT.md\u003c/code\u003e\u003c/a\u003e - expected behavior and community standards\u003c/li\u003e\n  \u003cli\u003e\u003ca href=\"./CONTRIBUTING.md\"\u003e\u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e\u003c/a\u003e - contribution workflow and pull request guidelines\u003c/li\u003e\n\u003c/ul\u003e\n\n\n\u003cdiv id=\"about-x\" align=\"center\"\u003e\n\u003ch2\u003eX\u003c/h2\u003e\n\n\u003cdiv\u003e\n\u003cimg src=\"./assets/gitnapse-icon.png\" width=\"50\"\u003e\n\u003c/div\u003e\n\u003ca href=\"https://dev.xscriptor.com\"\u003e\n  \u003cimg src=\"https://xscriptor.github.io/icons/icons/code/product-design/xsvg/verified-filled.svg\" width=\"24\" alt=\"X Web\" /\u003e\n\u003c/a\u003e\n \u0026 \n\u003ca href=\"https://github.com/xscriptor\"\u003e\n  \u003cimg src=\"https://xscriptor.github.io/icons/icons/code/product-design/xsvg/github.svg\" width=\"24\" alt=\"X Github Profile\" /\u003e\n\u003c/a\u003e\n \u0026 \n\u003ca href=\"https://www.xscriptor.com\"\u003e\n  \u003cimg src=\"https://xscriptor.github.io/icons/icons/code/product-design/xsvg/quotes.svg\" width=\"24\" alt=\"Xscriptor web\" /\u003e\n\u003c/a\u003e\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxscriptor%2Fgitnapse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxscriptor%2Fgitnapse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxscriptor%2Fgitnapse/lists"}