{"id":14980406,"url":"https://github.com/rhymeswithmogul/psgemini","last_synced_at":"2025-10-29T00:30:32.416Z","repository":{"id":135521452,"uuid":"457776509","full_name":"rhymeswithmogul/PSGemini","owner":"rhymeswithmogul","description":"Access and download resources over the Gemini protocol -- in PowerShell!","archived":false,"fork":false,"pushed_at":"2024-09-03T05:15:35.000Z","size":133,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-01T20:11:24.033Z","etag":null,"topics":["gemini","gemini-client","gemini-protocol","linux","macos","powershell","powershell-cmdlets","powershell-core","powershell-gallery","powershell-module","powershell-modules","pwsh","windows"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rhymeswithmogul.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.txt","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-10T12:44:43.000Z","updated_at":"2024-12-22T23:37:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"b433d154-40b1-40dd-b61e-25864057ec16","html_url":"https://github.com/rhymeswithmogul/PSGemini","commit_stats":{"total_commits":23,"total_committers":1,"mean_commits":23.0,"dds":0.0,"last_synced_commit":"0e385cb170a9b083fca16f0a332c0754992477b5"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhymeswithmogul%2FPSGemini","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhymeswithmogul%2FPSGemini/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhymeswithmogul%2FPSGemini/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rhymeswithmogul%2FPSGemini/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rhymeswithmogul","download_url":"https://codeload.github.com/rhymeswithmogul/PSGemini/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238743880,"owners_count":19523195,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["gemini","gemini-client","gemini-protocol","linux","macos","powershell","powershell-cmdlets","powershell-core","powershell-gallery","powershell-module","powershell-modules","pwsh","windows"],"created_at":"2024-09-24T14:01:43.648Z","updated_at":"2025-10-29T00:30:27.125Z","avatar_url":"https://github.com/rhymeswithmogul.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![PowerShell Gallery Version (including pre-releases)](https://img.shields.io/powershellgallery/v/PSGemini?include_prereleases)](https://powershellgallery.com/packages/PSGemini/) [![PowerShell Gallery](https://img.shields.io/powershellgallery/dt/PSGemini)](https://powershellgallery.com/packages/v/PSGemini)\n\n# PSGemini\nA [Gemini](https://gemini.circumlunar.space/) client written for PowerShell 7 and newer.\n\n## Installation\nGrab it from PowerShell Gallery with: `Install-Module PSGemini`\n\n## Usage\nIn this example, we'll connect to a Gemini server and return the content.\n\n```\nPS C:\\\u003e Invoke-GeminiRequest gemini://gemini.circumlunar.space\nWARNING: First visit. Memorizing new certificate for gemini.circumlunar.space\n\nStatusCode        : 20\nStatusDescription : text/gemini\nContent           : # Project Gemini\n                    \n                    ## Overview\n                    \n                    Gemini is a new internet protocol which:\n                    \n                    * Is heavier than gopher\n                    * Is lighter than the web\n                    * Will not replace either\n                    * Strives for maximum power to weight ratio\n                    * Takes user privacy very seriously\n[…]\n```\n\nThe syntax and output of this cmdlet is modeled after [`Invoke-WebRequest`](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-webrequest) and [`Invoke-GopherRequest`](https://github.com/rhymeswithmogul/PSGopher), going as far as to emulate some of its properties:\n\n```\nPS /home/colin\u003e igemr gemini://gemini.circumlunar.space\n\nStatusCode        : 20\nStatusDescription : text/gemini\nContent           : # Project Gemini\n                    \n                    ## Overview\n                    \n                    Gemini is a new internet protocol which:\n                    \n                    * Is heavier than gopher\n                    * Is lighter than the web\n                    * Will not replace either\n                    * Strives for maximum power to weight ratio\n                    * Takes user privacy very seriously\n[…]\n                    \nRawContent        : 20 text/gemini\n                    # Project Gemini\n                    \n                    ## Overview\n                    \n                    Gemini is a new internet protocol which:\n                    \n                    * Is heavier than gopher\n                    * Is lighter than the web\n                    * Will not replace either\n                    * Strives for maximum power to weight ratio\n                    * Takes user privacy very seriously\n[…]\n\nHeaders           : {}\nHeadings          : {@{Level=1; Content=Project Gemini}, @{Level=2; Content=Overview}, @{Level=2; Content=Resources}, @{Level=2; Content=Web proxies}…}\nLinks             : {@{href=gemini://gemini.circumlunar.space/news/; title=Official Project Gemini news}, @{href=gemini://gemini.circumlunar.space/docs/; title=Gemini documentation}, @{href=gemini://gemini.circumlunar.space/software/; title=Gemini software}, @{href=gemini://gemini.circumlunar.space/servers/; title=Known Gemini servers}…}\nRawContentLength  : 1281\n```\n\n### Downloading Files\nYou can also use PSGemini's `-OutFile` parameter to download files:\n\n```powershell\nPS /Users/colin\u003e Invoke-GeminiRequest -UseSSL gemini://colincogle.name/pgp/pgp.txt -OutFile pgp.txt\nPS /Users/colin\u003e Get-Item pgp.txt                            \n\n    Directory: /Users/colin\n\nUnixMode   User             Group                 LastWriteTime           Size Name\n--------   ----             -----                 -------------           ---- ----\n-rw-r--r-- colin            wheel                2/8/2022 08:05           5218 pgp.txt\n```\n\n### Other Neat Features\n* Full support for all platforms that support PowerShell 7.1 or newer -- that's Windows, macOS, and Linux!\n* Since Gemini certificates can be self-signed, PSGemini maintains its own \u003cabbr title=\"Trust on First Use\"\u003eTOFU\u003c/abbr\u003e certificate store.\n* Client certificates can be provided (`-Certificate [\u003cX509Certificate\u003e]`).\n* Full support for [experimental favicons](https://portal.mozz.us/gemini/mozz.us/files/rfc_gemini_favicon.gmi) (`-FavIcon`), disabled by default in the spirit of Gemini.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frhymeswithmogul%2Fpsgemini","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frhymeswithmogul%2Fpsgemini","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frhymeswithmogul%2Fpsgemini/lists"}