My GitHub Repositories
(I write a lot of code)
Some Stats:
- 1821 ★
- 544 followers
- 126 public repos
- StartAutomating(89)
- PowerShellWeb(16)
- PoshWeb(21)
- 94 of my repos are original
- 32 of my repos are forks
- 310 forks of my repos
- 1821 watchers of my repos
- 2042 open issues in my repos
PSDevOps
PowerShell Tools for DevOps
★ 152 | Forks: 32 | Watchers: 152 | Open Issues: 44
Created: 2019-11-17 | Updated: 2026-05-27
- Cool scripts / Good Article! Also, I feel compelled to ask / shamelessly promote.... Why not PSDevOps? github.com/StartAutomat...
— @
Irregular
Regular Expressions made Strangely Simple
★ 108 | Forks: 9 | Watchers: 108 | Open Issues: 44
Created: 2019-09-16 | Updated: 2026-05-12
- I used to hate #regex and the #regexlife. Then I made a #PowerShell module to help create and use Regular Expressions. https://github.com/StartAutomating/Irregular Now #regexlife is beautiful.
— @
PipeScript
A Metaprogramming Language for PowerShell (and anything else)
★ 106 | Forks: 8 | Watchers: 106 | Open Issues: 370
Created: 2022-06-21 | Updated: 2026-04-26
- Lol, lots of companies should be paying me for advice. Also, check these two issues from over a year ago. github.com/StartAutomat... github.com/StartAutomat... "All functions that quack are ducks" is my fun example. ( Makes all functions with a quack parameter ducktyped as ducks )
— @
ugit
Updated Git: A powerful PowerShell wrapper for git that lets you extend git, automate multiple repos, and output git as objects.
★ 96 | Forks: 8 | Watchers: 96 | Open Issues: 40
Created: 2022-03-18 | Updated: 2026-05-20
- Alright, some seriously useful modules incoming. Some I have made, some made by others. Starting off with the one I use for every commit. ugit github.com/StartAutomat... Updated #Git with objects automatically parsed from text i.e. git log | Group-Object { $_.CommitDate.DayOfWeek }
— @
obs-powershell
Script OBS with PowerShell
★ 77 | Forks: 4 | Watchers: 77 | Open Issues: 52
Created: 2022-12-09 | Updated: 2026-05-04
- Nice! Did you use obs-powershell to display it? Want to file an issue / make a PR? github.com/StartAutomat...
— @
EZOut
EZOut is a PowerShell module to help take the pain out of writing format and types XML
★ 74 | Forks: 8 | Watchers: 74 | Open Issues: 48
Created: 2014-05-05 | Updated: 2026-05-06
- Another build of EZOut is, um, Out: https://github.com/StartAutomating/EZOut In this batch: * Formatting can live in the 'Types' directory. * -Style parameters get even better * Out-Alternate shows you different views #PowerShell #Formatting #posh
— @
Posh
PowerShell made Posh
★ 72 | Forks: 6 | Watchers: 72 | Open Issues: 98
Created: 2023-07-20 | Updated: 2026-04-13
- Nah, it's just a nickname for PowerShell. And we don't have to not use a perfectly cool nickname because a Debian package already exists. Also, you missed at least one Posh PowerShell project 😉 GitHub.com/StartAutomat...
— @
Pipeworks
PowerShell Pipeworks is a web platform built in Windows PowerShell, and a toolkit for putting it all together with PowerShell
★ 70 | Forks: 15 | Watchers: 70 | Open Issues: 29
Created: 2014-09-02 | Updated: 2025-10-27
- I feel you... part of why I haven't come back to it. That and wanting other people to have a chance to make a mark. Here's the _very_ old Pipeworks Invoke-Parallel (at least 12 years old now [almost a teenager]) github.com/StartAutomat...
— @
Splatter
Simple Scripts to Supercharge Splatting
★ 68 | Forks: 0 | Watchers: 68 | Open Issues: 26
Created: 2019-07-06 | Updated: 2026-02-25
- 💯 its ridiculously overpowered to just basically be like: Find me all commands that have the letter G in them and have a parameter named X with Y type. Apropos of old fun cool tools that might make Defender yell a bit. GitHub.com/StartAutomat...
— @
PowerArcade
A Retro Arcade Game Console in PowerShell
★ 66 | Forks: 0 | Watchers: 66 | Open Issues: 5
Created: 2020-04-01 | Updated: 2026-04-13
- Last but not least there's a console game engine I built in 2020. Very simple to implement game logic. Keep meaning to give it some love and make it run web / server games, too. GitHub.com/StartAutomat... Very open to PRs and collaboration on any of these.
— @
Benchpress
Easy Benchmarking with PowerShell
★ 60 | Forks: 4 | Watchers: 60 | Open Issues: 11
Created: 2019-03-23 | Updated: 2026-03-20
- Want to compare and contrast #performance of a #PowerShell script? There's a module for that: github.com/StartAutomat...
— @
ScriptDeck
PowerShell Tools for Elgato StreamDeck
★ 58 | Forks: 16 | Watchers: 58 | Open Issues: 62
Created: 2021-03-31 | Updated: 2026-05-27
- You might also be able to sidestep BurntToast by using the .NET apis directly. Found an ScriptDeck/WindowsPowerShell.StreamDeckPluginTemplate.ps1 at b33ce2b69f1b2fb42387291a6ac05b21e9ee37c9 · StartAutomating/ScriptDeck (github.com) (to long to skeet/tweet/whatever we're calling it)
— @
PSSVG
Script SVGs with PowerShell
★ 44 | Forks: 2 | Watchers: 44 | Open Issues: 120
Created: 2022-09-08 | Updated: 2026-05-17
- There's also a fairly fully featured wrapper to produce any #SVG. GitHub.com/StartAutomat... This would be especially useful in reducing file sizes, as you can craft a grid pattern out of only one copy of a small set of tiles ( no prerendering required )
— @
ScriptCop
ScriptCop is a static analysis and testing tool for Windows PowerShell
★ 44 | Forks: 4 | Watchers: 44 | Open Issues: 1
Created: 2014-05-05 | Updated: 2025-11-18
RoughDraft
A Fun PowerShell Module for Multimedia (using FFMpeg)
★ 43 | Forks: 4 | Watchers: 43 | Open Issues: 52
Created: 2021-11-29 | Updated: 2026-05-17
- I feel like this will trail off quite a bit as you get into more and more obscure filters. And RoughDraft already supports _most_ filters that are well-documented. (there's about 130 extensions) github.com/StartAutomat... I just generally try to add one or two new ones when I update...
— @
ShowDemo
A simple tool to showcase your scripts.
★ 41 | Forks: 2 | Watchers: 41 | Open Issues: 15
Created: 2022-12-03 | Updated: 2026-04-13
- I hate making typos in talks so much I made a #PowerShell module that will type it out for me. github.com/StartAutomat... Never typo during a talk again!
— @
Eventful
Easy Eventful PowerShell
★ 38 | Forks: 1 | Watchers: 38 | Open Issues: 13
Created: 2021-11-02 | Updated: 2026-03-30
HelpOut
A Helpful Toolkit for Managing PowerShell Help
★ 35 | Forks: 4 | Watchers: 35 | Open Issues: 20
Created: 2019-06-18 | Updated: 2026-01-09
- This is part of why I use / build HelpOut..... GitHub.com/StartAutomat... Cause nobody wants docs that say "doc me" 😉. Future versions will dovetail with PlatyPS vnext for best of both worlds.
— @
PowerShellAI
PowerShell meets GPT - Artificial Intelligence
★ 35 | Forks: 100 | Watchers: 35 | Open Issues: 0
Created: 2023-01-12 | Updated: 2026-02-03
Patchy
Patchy is a PowerShell module that helps smooth out the chop of maintaining Windows Updates
★ 27 | Forks: 3 | Watchers: 27 | Open Issues: 0
Created: 2014-05-05 | Updated: 2026-01-09
PSMinifier
A Miniature Minifier For PowerShell
★ 25 | Forks: 4 | Watchers: 25 | Open Issues: 10
Created: 2020-01-21 | Updated: 2026-05-19
- Why stop at just removing comments? StartAutomating/PSMinifier: A Miniature Minifier For PowerShell (github.com) (all seriousness, keep comments in your shipped module, they help... minify only if you want the speed/bandwidth savings).
— @
MenuShell
MenuShell is a PowerShell module for rapidly making console menus
★ 22 | Forks: 2 | Watchers: 22 | Open Issues: 1
Created: 2014-05-05 | Updated: 2025-07-22
WebSocket
Work with WebSockets in PowerShell
★ 21 | Forks: 2 | Watchers: 21 | Open Issues: 20
Created: 2024-11-27 | Updated: 2026-04-19
- There's also a WebSocket client / server you can use for fast communication between your app and a #PowerShell backend. GitHub.com/PowerShellWe... Great for taking input from a GUI and moving it to backend processes.
— @
Rocker
Rock Docker with PowerShell
★ 21 | Forks: 0 | Watchers: 21 | Open Issues: 31
Created: 2024-04-03 | Updated: 2026-04-13
- Rock #Docker with #PowerShell github.com/StartAutomat...
— @
LightScript
Smarter Lighting with PowerShell
★ 20 | Forks: 5 | Watchers: 20 | Open Issues: 58
Created: 2021-12-23 | Updated: 2026-04-13
- Alright this little directory should be a goldmine of #PowerShell #Color scripts github.com/StartAutomat... That module controls smart lighting btw. I'll try to make something that's just for colors soon. You might also want to check out Pansies.
— @
TerminalVelocity
Fine tuning Windows Terminal
★ 19 | Forks: 1 | Watchers: 19 | Open Issues: 3
Created: 2020-05-14 | Updated: 2026-01-09
- I'd be shocked / annoyed if that wasn't part of the profile schema. And it is :-) And it's already covered in TerminalVelocity 😎 github.com/StartAutomat... (seriously love it when my code generation gets to a feature I didn't even know existed 😉 )
— @
Turtle
Turtle Graphics in PowerShell
★ 18 | Forks: 8 | Watchers: 18 | Open Issues: 24
Created: 2025-07-23 | Updated: 2026-05-10
- A fairly generic method of making these would be using SVG. You could write it by hand / script (it's a pretty old and easy standard). You could also use Turtle github.com/PoshWeb/Turtle You could also use PSSVG github.com/StartAutomat... Any of these approaches method is about the same.
— @
PowerNix
Linux Tools for PowerShell People.
★ 17 | Forks: 1 | Watchers: 17 | Open Issues: 14
Created: 2021-05-19 | Updated: 2026-01-18
OnQ
Easy Asynchronous Event-Driven Scripting with PowerShell
★ 17 | Forks: 1 | Watchers: 17 | Open Issues: 0
Created: 2021-01-24 | Updated: 2025-11-04
PowerHistory
PowerShell History Made More Powerful
★ 16 | Forks: 1 | Watchers: 16 | Open Issues: 0
Created: 2020-03-03 | Updated: 2026-01-09
- Some other additional bonus points : history objects are "sticky". Changes to them will persist as long as the session is open. Made a module a while back to play with history objects. Enjoy! github.com/StartAutomat...
— @
Discovery
Discovery is a powerful PowerShell module that lets you probe the inner depths of the operating system.
★ 16 | Forks: 4 | Watchers: 16 | Open Issues: 1
Created: 2014-05-07 | Updated: 2026-01-09
AutoBrowse
AutoBrowse is a Windows PowerShell module that lets you automate browsing with Internet Explorer
★ 16 | Forks: 6 | Watchers: 16 | Open Issues: 0
Created: 2014-05-05 | Updated: 2025-10-27
Emoji
⟩⚡PowerShell Emoji 😎😉😍🥰🤔😟
★ 15 | Forks: 0 | Watchers: 15 | Open Issues: 23
Created: 2024-02-20 | Updated: 2026-01-09
- Actually got this out the door fairly quickly (but only because I was doing a sanity check on other Gallery release attempts) github.com/StartAutomat...
— @
Piecemeal
Easy Extensible Plugins for PowerShell
★ 14 | Forks: 1 | Watchers: 14 | Open Issues: 2
Created: 2021-12-19 | Updated: 2025-05-21
PSMetrics
A Module for Metrics in PowerShell
★ 13 | Forks: 1 | Watchers: 13 | Open Issues: 12
Created: 2023-04-25 | Updated: 2026-04-13
CodeCraft
CodeCraft is a Powershell module full of code generators that helps you crank out tedious code.
★ 13 | Forks: 5 | Watchers: 13 | Open Issues: 0
Created: 2014-05-05 | Updated: 2026-04-27
PSPrettifier
Prettify your PowerShell
★ 11 | Forks: 0 | Watchers: 11 | Open Issues: 10
Created: 2022-09-28 | Updated: 2025-05-21
GitPub
Easily Automate Publishing from GitHub
★ 10 | Forks: 3 | Watchers: 10 | Open Issues: 26
Created: 2022-10-10 | Updated: 2026-05-23
MarkX
MarkX - Markdown, XML, and PowerShell
★ 9 | Forks: 1 | Watchers: 9 | Open Issues: 5
Created: 2025-12-24 | Updated: 2026-05-04
Winformal
Winformal is a PowerShell module to let you script WinForms with cmdlets
★ 9 | Forks: 2 | Watchers: 9 | Open Issues: 0
Created: 2014-05-08 | Updated: 2025-05-21
PSA
PowerShell Announcements (with AtProtocol)
★ 9 | Forks: 1 | Watchers: 9 | Open Issues: 31
Created: 2023-09-12 | Updated: 2026-04-08
- Or, hear me out and call me crazy.... You could just write some PowerShell to generate commands or scripts to work with every lexicon in the at protocol. Like so. github.com/StartAutomat... Fork it and let the workflow make you a newer copy.
— @
Servers101
Simple Servers in PowerShell
★ 9 | Forks: 2 | Watchers: 9 | Open Issues: 8
Created: 2025-12-07 | Updated: 2026-05-23
- Let's start with the one I updated yesterday: GitHub.com/PoshWeb/Serv... The basic point of this module is to share short servers that help explain / demonstrate how to write web servers. Will be putting more servers into that module over time. Happy to take requests / issues.
— @
PingMe
PingMe is a PowerShell module to simplify different types of network checks on a machine
★ 9 | Forks: 3 | Watchers: 9 | Open Issues: 0
Created: 2014-05-10 | Updated: 2023-07-17
StartAutomating
Save Time, Save Money, Start Automating.
★ 8 | Forks: 0 | Watchers: 8 | Open Issues: 46
Created: 2022-08-28 | Updated: 2026-04-26
SecureSettings
SecureSettings is a small PowerShell module to manage storing settings information securely
★ 7 | Forks: 2 | Watchers: 7 | Open Issues: 0
Created: 2014-05-06 | Updated: 2022-10-16
PowerCode
A PowerShell Module for Customizing Visual Studio Code
★ 7 | Forks: 0 | Watchers: 7 | Open Issues: 73
Created: 2023-02-23 | Updated: 2025-10-06
PSJekyll
PowerShell Tools for Jekyll
★ 7 | Forks: 0 | Watchers: 7 | Open Issues: 31
Created: 2024-09-30 | Updated: 2026-05-23
HeatMap
HeatMap is a PowerShell module for monitoring performance counters in PowerShell
★ 7 | Forks: 2 | Watchers: 7 | Open Issues: 0
Created: 2014-05-05 | Updated: 2022-06-11
MrPowerShell
Jack of all Trades, Master of PowerShell
★ 6 | Forks: 2 | Watchers: 6 | Open Issues: 69
Created: 2024-12-21 | Updated: 2026-05-28
- Every once in a while I make a commit message that is kinda epic in it's own right.... github.com/StartAutomat... 😂 Might as well add it to the git log for posterity. 😂
— @
ollama-powershell
Ollama PowerShell: Play with AI in PowerShell
★ 6 | Forks: 2 | Watchers: 6 | Open Issues: 0
Created: 2025-03-02 | Updated: 2026-03-02
- Hey #PowerShell people and #AI #PromptEngineers I made a wrapper for #ollama One cool feature: Run language models by name For example: phi3 "What is your purpose?" Have fun! github.com/StartAutomat...
— @
PoshMacros
Sleek and Simple PowerShell Macros
★ 5 | Forks: 0 | Watchers: 5 | Open Issues: 0
Created: 2020-02-09 | Updated: 2023-09-16
Glass
Glass is a module for seeing thru invisible characters
★ 5 | Forks: 1 | Watchers: 5 | Open Issues: 0
Created: 2025-10-23 | Updated: 2025-11-02
- Also got a few small modules out.... In order of recency, we've got Glass, which was meant to help find #Glassware #Glassworm messages in files or packages, and help people understand the vector: github.com/StartAutomat...
— @
JSON-LD
Get JSON Linked Data with PowerShell
★ 4 | Forks: 1 | Watchers: 4 | Open Issues: 1
Created: 2025-03-16 | Updated: 2026-04-19
- Hey #PowerShell people, JSON-LD 0.1.1 is out! Get Linked Data from any website! New in this version: Support for auto-conversion of Linked Data to #JSONSchema and #AtProto lexicons! ~~~PowerShell (JSONLD 'https://schema.org/Movie').GetJsonSchema() ~~~ github.com/PoshWeb/JSON...
— @
PoshWeb
Cool Indie WebDev Tools with PowerShell
★ 4 | Forks: 0 | Watchers: 4 | Open Issues: 3
Created: 2026-02-21 | Updated: 2026-05-18
PowRoku
Script your Roku with PowerShell
★ 4 | Forks: 0 | Watchers: 4 | Open Issues: 3
Created: 2021-08-03 | Updated: 2025-07-27
PS3D
PowerShell Tools for 3D Printing
★ 4 | Forks: 0 | Watchers: 4 | Open Issues: 76
Created: 2022-04-25 | Updated: 2025-08-21
TerminalTunes
A Music Player for Terminals
★ 4 | Forks: 1 | Watchers: 4 | Open Issues: 34
Created: 2022-09-24 | Updated: 2026-05-28
PSAdapter
Adapt anything into PowerShell Commands
★ 4 | Forks: 1 | Watchers: 4 | Open Issues: 33
Created: 2024-09-08 | Updated: 2026-04-29
- New #PowerShell module alert: Finally released PSAdapter: github.com/StartAutomat... Demonstration module about CmdletAdapters and how to use them. Make one adapter to build a bridge to a whole ecosystem. Included example adapters for #JSON, #XML, HTML, Events, and any #DotNet api.
— @
OP
Overpowered module for Open Packages
★ 3 | Forks: 0 | Watchers: 3 | Open Issues: 17
Created: 2025-10-27 | Updated: 2026-05-23
- Yep. I believe a lot of technology is inherently "dual use". But 🤷 what do I know? I'm just a person who keeps producing stuff used by blue team and red team. And someone who threat modelled tech that hasn't been broken in ~20 years. Apropos of nothing, latest insanity: github.com/PoshWeb/OP/
— @
OpenGraph
Get OpenGraph with PowerShell
★ 3 | Forks: 1 | Watchers: 3 | Open Issues: 0
Created: 2025-03-16 | Updated: 2026-05-15
- Hey #PowerShell people, module update alert: The #OpenGraph module just got an update! Now with improved support for unclosed meta tags github.com/PoshWeb/Open... Use this module to see if your sites are #SEO friendly. Have fun!
— @
PSData
In-Memory .NET Databases in PowerShell
★ 3 | Forks: 0 | Watchers: 3 | Open Issues: 106
Created: 2024-07-21 | Updated: 2025-05-21
WhereFor
Wherefore Art Thou PowerShell? Multiple Object Pipelines
★ 3 | Forks: 0 | Watchers: 3 | Open Issues: 4
Created: 2024-12-07 | Updated: 2025-05-21
- Another day, another fun #powershell #pwsh module. Fresh out of the pipeline, I give you all WhereFor: github.com/StartAutomat... Run multiple Where-Object/Foreach-Objects in multiple object pipelines. Happy Scripting!
— @
formulaic
Formulaic is a PowerShell module containing useful math, physics, and statistcs functions
★ 3 | Forks: 2 | Watchers: 3 | Open Issues: 24
Created: 2014-04-30 | Updated: 2026-04-02
Reptile
Read Evaluate Print Terminal Input Loop Editor - A Scaley Simple PowerShell Data REPL.
★ 3 | Forks: 1 | Watchers: 3 | Open Issues: 9
Created: 2025-12-30 | Updated: 2026-04-29
Gradient
Gradient Generation with PowerShell
★ 2 | Forks: 0 | Watchers: 2 | Open Issues: 3
Created: 2025-12-29 | Updated: 2026-04-13
- Aliases rock, especially if they're more clear: For example, I've got a module for CSS gradient generation. The command is Get-Gradient The alias is simple Gradient So I can just type ~~~PowerShell gradient red green blue ~~~ And get back a gradient. 😎 github.com/PoshWeb/Grad...
— @
oEmbed
Open Embedding with PowerShell
★ 2 | Forks: 0 | Watchers: 2 | Open Issues: 6
Created: 2025-03-15 | Updated: 2026-05-23
GQL
Get GraphQL in PowerShell
★ 2 | Forks: 0 | Watchers: 2 | Open Issues: 5
Created: 2024-12-16 | Updated: 2026-02-11
HtmxPS
Script Htmx and PowerShell Microservices
★ 2 | Forks: 0 | Watchers: 2 | Open Issues: 47
Created: 2024-10-21 | Updated: 2026-04-19
AI
Automate AI with PowerShell
★ 2 | Forks: 1 | Watchers: 2 | Open Issues: 0
Created: 2025-02-23 | Updated: 2025-12-17
Escape
Escape the pain of escape sequences
★ 2 | Forks: 0 | Watchers: 2 | Open Issues: 0
Created: 2026-02-05 | Updated: 2026-02-19
- New #PowerShell module alert! Escape! Escape the pain of escape sequences github.com/StartAutomat... Initial build has over 100 escape sequences to use without looking up arcane syntax. Hat tip to @sneakyness.com for the inspiration! Have fun!
— @
PowerShellPowerPoints
A Collection of Presentations I've given on PowerShell
★ 2 | Forks: 0 | Watchers: 2 | Open Issues: 0
Created: 2020-05-15 | Updated: 2023-08-10
Dice
Roll the Dice and Play with Probability in PowerShell - ⚀ ⚅
★ 2 | Forks: 0 | Watchers: 2 | Open Issues: 1
Created: 2024-08-10 | Updated: 2025-05-21
- Nice script! If you want to take that idea up to 11 and add datatables for long term tracking of all of the Dice rolls, I _might_ have gone a bit overboard with this little module. github.com/StartAutomat... Reminds me I need to build it's sibling module one of these days...
— @
SearchScript
Search PowerShell Scripts
★ 2 | Forks: 0 | Watchers: 2 | Open Issues: 0
Created: 2025-12-12 | Updated: 2025-12-22
- Hey #PowerShell people and #CyberSecurity professionals: I made a quick little module to search scripts, so we can find and fix potential CVE-2025-54100 related problems (or other dangerous anti-patterns, like Invoke-Expression). Hope this Helps! github.com/StartAutomat...
— @
Vector
Vectors in PowerShell
★ 1 | Forks: 0 | Watchers: 1 | Open Issues: 0
Created: 2025-10-04 | Updated: 2026-05-23
MathML
PowerShell and MathML
★ 1 | Forks: 0 | Watchers: 1 | Open Issues: 0
Created: 2025-10-02 | Updated: 2026-05-23
ROI
Calculate Return on Investment
★ 1 | Forks: 0 | Watchers: 1 | Open Issues: 0
Created: 2026-02-12 | Updated: 2026-02-15
- Hey #PowerShell people, I made a mini-module this weekend: ROI: github.com/StartAutomat... Simple Return on Investment calculator. It has some pretty interesting examples: My top 3: 1. The ROI for writing Open Source 2. The ROI of Automation 3. The highly volatile ROI of #AI
— @
Shuffle
Simple Shuffle with PowerShell
★ 1 | Forks: 0 | Watchers: 1 | Open Issues: 0
Created: 2025-12-07 | Updated: 2026-01-03
Subtitles
Script Subtitles with PowerShell.
★ 1 | Forks: 1 | Watchers: 1 | Open Issues: 4
Created: 2025-12-23 | Updated: 2026-05-27
- Yep. New places for attackers to hide. It's One Battle After Another. Which is why I just dropped a Subtitles module. github.com/StartAutomat... #CyberSecurity #PowerShell #Accessibility
— @
4kbMarkdownFiles
Performance Testing Parsing of 4kb Markdown Files
★ 1 | Forks: 2 | Watchers: 1 | Open Issues: 3
Created: 2026-01-14 | Updated: 2026-05-23
AtPowerShellSummit
What happens at PowerShell Summit
★ 1 | Forks: 1 | Watchers: 1 | Open Issues: 2
Created: 2025-04-06 | Updated: 2026-05-19
PowerShellWeb
PowerShell Web Development
★ 1 | Forks: 0 | Watchers: 1 | Open Issues: 30
Created: 2024-11-03 | Updated: 2024-12-04
StartAutomating.github.io
Save Time, Save Money, Start Automating.
★ 1 | Forks: 0 | Watchers: 1 | Open Issues: 0
Created: 2021-12-28 | Updated: 2024-01-01
OpenXML
Automate OpenXML with PowerShell
★ 1 | Forks: 1 | Watchers: 1 | Open Issues: 32
Created: 2025-10-14 | Updated: 2026-02-28
PocketMarkdown
Pocket Blog to Markdown
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 2
Created: 2026-04-12 | Updated: 2026-04-12
- Another answer to "What Have I Done?" github.com/PoshWeb/Pock... Dropped this this weekend, partially as a test of using some other tech to release modules. Will be making a pocket blog post and expanding it soon. Then it's @offprint.app 's turn. Then @leaflet.pub . Who's next?
— @
CTAN
PowerShell module for the Comprehensive TeX Archive Network
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 0
Created: 2026-01-24 | Updated: 2026-01-25
- In other #PowerShell module releases of the weekend, there's CTAN. github.com/StartAutomat... Just a quick PowerShell module to help you work with the Comprehensive #TeX archive network API.
— @
Shape
CSS Shapes with PowerShell
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 1
Created: 2026-01-04 | Updated: 2026-02-11
Neocities
Personal Webpages in PowerShell
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 0
Created: 2025-03-25 | Updated: 2026-02-11
PechaKucha
PechaKucha Presentations with PowerShell
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 3
Created: 2025-01-21 | Updated: 2025-01-21
- As for how broken this can be... Last year I gave a #PechaKucha on #SVG (and a bit of #PowerShell) Still need to drop the scripts, but I was able to put the whole 6:40 PechaKucha into a GitHub Issue: github.com/StartAutomat...
— @
Badger
Build Badges in PowerShell
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 33
Created: 2024-12-11 | Updated: 2024-12-11
.github
PowerShellWeb Org
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 1
Created: 2024-09-28 | Updated: 2024-09-29
StandardSiteIndex
An Index of Standard.site Content
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 3
Created: 2026-01-29 | Updated: 2026-05-22
AtGitHub
At Protocol and GitHub
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 6
Created: 2025-05-28 | Updated: 2025-10-24
- @bad-example.com I like what you're doing with #GitHub sponsorship. 😎😉 been meaning to try that, lemme know how it goes. In other news, #AtProto + #GitHub #Workflows truly slap. See: github.com/PowerShellWe...
— @
Organize
Get Organized - Fast Grouping by multiple conditions
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 1
Created: 2026-01-05 | Updated: 2026-01-05
- The slightly more recent #PowerShell release is a little mini module for multiple groups: github.com/StartAutomat... Quickly create nested groupings with natural syntax: For example: ~~~PowerShell dir -Recurse -File | organize LastWriteTime.Year/Month/Day ~~~
— @
EditFont
Manage and Manipulate fonts with PowerShell
★ 0 | Forks: 0 | Watchers: 0 | Open Issues: 1
Created: 2025-09-14 | Updated: 2025-09-22
View Source
<#
.SYNOPSIS
Gets my GitHub repositories
.DESCRIPTION
Gets my GitHub repositories and displays them as HTML.
.EXAMPLE
./index.html.ps1
.LINK
https://MrPowerShell.com/GitHub
#>
#requires -Module PSDevOps
param(
[string]
$did = 'did:plc:hlchta7bwmobyum375ltycg5',
[string]
$GitHubUserName = 'StartAutomating',
[Alias('GitHubOrgs','GitHubOrg')]
[string[]]
$GitHubOrganizations = @('StartAutomating', 'PowerShellWeb','PoshWeb')
)
$Title = "My GitHub Repos"
$Description = "Most of My GitHub repositories"
if (-not $script:CachedRepoList) {
$script:CachedRepoList = [Ordered]@{}
$connectedToGitHub = Connect-GitHub
$myGitHubInfo = api.github.com/users/<username> -username $GitHubUserName
foreach ($githubOrg in $gitHubOrganizations) {
$script:CachedRepoList[$githubOrg] = api.github.com/users/<username>/repos -username $githubOrg -perPage 100
}
}
$myRepos = @($script:CachedRepoList.Values) | . { process { $_ } }
$myRepos | ConvertTo-Json -Depth 10 | Set-Content -Path $PSScriptRoot/Repos.json
$myReposByPopularity = $myRepos | Where-Object -Not Fork | Sort-Object stargazers_count -Descending
$totalStars = ($myRepos | Measure-Object -Property stargazers_count -Sum).Sum
if (-not $atProtocolData -and $at.AtData) {
$atProtocolData = $at.AtData
}
$postsAboutRepos =
if ($atProtocolData) {
foreach ($message in @($atProtocolData.Tables['app.bsky.feed.post'].Select("did = '$($did -replace '_', ':')'", "createdAt DESC")).message) {
$messageLink = $message.commit.record.embed.external.uri -as [uri]
if (-not $messageLink) { continue }
if ($messageLink.DnsSafeHost -match 'github\.com$') {
$message
}
}
}
$markdown = @(
"# My GitHub Repositories"
"(I write a lot of code)"
"## Some Stats:"
" * $totalStars ★"
" * [$($myGitHubInfo.followers) followers](https://github.com/$GitHubUserName/?tab=followers)"
" * $($myRepos.Count) public repos"
foreach ($key in $script:CachedRepoList.Keys) {
" * [$($key)](https://github.com/$key/?tab=repositories)($($script:CachedRepoList[$key].Count))"
}
" * $($($myRepos | Where-Object -Not Fork | Measure-Object).Count) of my repos are original"
" * $($($myRepos | Where-Object Fork | Measure-Object).Count) of my repos are forks"
" * $($($myRepos | Measure-Object -Property forks_count -Sum).Sum) forks of my repos"
" * $($($myRepos | Measure-Object -Property watchers_count -Sum).Sum) watchers of my repos"
" * $($($myRepos | Measure-Object -Property open_issues_count -Sum).Sum) open issues in my repos"
) -join [Environment]::NewLine
(ConvertFrom-Markdown -InputObject $markdown).Html
"<style>"
".github-repos { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2.5em; margin: 2.5em}"
".github-repo-sorter { font-size: 1.5em; text-align: center;}"
".repo-thumbnail { max-width: 100%; height: auto; }"
"</style>"
"<div class='github-repo-sorter'>"
"Sort by:"
"<select id='sort-repos'>"
"<option value='repoRandom'>Random</option>"
"<option value='repoStars' selected>Stars</option>"
"<option value='repoUpdatedAt'>Updated At</option>"
"<option value='repoCreatedAt'>Created At</option>"
"<option value='repoOpenIssues'>Open Issues</option>"
"<option value='repoForks'>Forks</option>"
"<option value='repoName'>Name</option>"
"<option value='repoWatchers'>Watchers</option>"
"</select>"
"<script>"
"document.getElementById('sort-repos').addEventListener('change', function(event) {"
" const sortBy = event.target.value;"
" const container = document.querySelector('.github-repos');"
" const repos = Array.from(container.children);"
" repos.sort((a, b) => {"
" if (sortBy === 'repoStars') {"
" return parseInt(b.dataset.repoStars) - parseInt(a.dataset.repoStars);"
" } else if (sortBy === 'repoForks') {"
" return parseInt(b.dataset.repoForks) - parseInt(a.dataset.repoForks);"
" } else if (sortBy === 'repoOpenIssues') {"
" return parseInt(b.dataset.repoOpenIssues) - parseInt(a.dataset.repoOpenIssues);"
" } else if (sortBy === 'repoName') {"
" return a.dataset.repoName.localeCompare(b.dataset.repoName);"
" } else if (sortBy === 'repoWatchers') {"
" return parseInt(b.dataset.repoWatchers) - parseInt(a.dataset.repoWatchers);"
" } else if (sortBy === 'repoCreatedAt') {"
" return new Date(b.dataset.repoCreatedAt) - new Date(a.dataset.repoCreatedAt);"
" } else if (sortBy === 'repoUpdatedAt') {"
" return new Date(b.dataset.repoUpdatedAt) - new Date(a.dataset.repoUpdatedAt);"
" } else if (sortBy === 'repoRandom') {"
" return Math.random() - 0.5;"
" }"
" return 0;"
" });"
" for (let i = 0; i < repos.length; i++) {"
" repos[i].style.order = i + 1;"
" }"
"});"
"</script>"
"</div>"
"<div class='github-repos'>"
foreach ($repoInfo in $myRepos | Where-Object Fork -Not | Sort-Object stargazers_count -Descending) {
$attributes = [Ordered]@{
'class' = 'github-repo'
'data-repo-name' = $repoInfo.Name
'data-repo-url' = $repoInfo.html_url
'data-repo-stars' = $repoInfo.stargazers_count
'data-repo-forks' = $repoInfo.forks_count
'data-repo-watchers' = $repoInfo.watchers_count
'data-repo-open-issues' = $repoInfo.open_issues_count
'data-repo-created-at' = $repoInfo.created_at.ToString('o')
'data-repo-updated-at' = $repoInfo.updated_at.ToString('o')
}
$attributeString = @(
foreach ($attributeName in $attributes.Keys) {
"$attributeName='$($attributes[$attributeName])'"
}
) -join ' '
"<div $attributeString>"
"<h2><a href='$($repoInfo.html_url)'>$($repoInfo.Name)</a></h2>"
"<p>$([Web.HttpUtility]::HtmlEncode($repoInfo.Description))</p>"
"<p>★ $($repoInfo.stargazers_count) | Forks: $($repoInfo.forks_count) | Watchers: $($repoInfo.watchers_count) | Open Issues: $($repoInfo.open_issues_count)</p>"
"<p>Created: $($repoInfo.created_at.ToString('yyyy-MM-dd')) | Updated: $($repoInfo.updated_at.ToString('yyyy-MM-dd'))</p>"
if ($postsAboutRepos) {
$post = $postsAboutRepos | Where-Object { $_.commit.record.embed.external.uri -match "^$([Regex]::Escape($repoInfo.html_url))" } | Get-Random
if ($post) {
$thumbRef = $post.commit.record.embed.external.thumb.ref.'$link'
$imageTag = if ($thumbRef) {
"<img class='repo-thumbnail' src='https://cdn.bsky.app/img/feed_thumbnail/plain/$($post.did)/$thumbRef@png' alt='Thumbnail' />"
} else { '' }
"<blockquote>$imageTag - $(
[Web.HttpUtility]::HtmlEncode($post.commit.record.text)
) <br/>— <a href='https://bsky.app/profile/$($post.did)/post/$($post.commit.rkey)'>@$($post.author.handle)</a></blockquote>"
}
}
"</div>"
}
"</div>"
#region View Source
"<details id='view-source'>"
"<summary>View Source</summary>"
"<pre><code class='language-powershell'>"
[Web.HttpUtility]::HtmlEncode("$($MyInvocation.MyCommand.ScriptBlock)")
"</code></pre>"
"</details>"
#endregion View Source