Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions .github/workflows/BuildPowerShellWeb.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@

name: Build PowerShellWeb
on:
push:
workflow_dispatch:
jobs:
BuildPowerShellWeb:
runs-on: ubuntu-latest
if: ${{ success() }}
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Use PSSVG Action
uses: StartAutomating/PSSVG@main
id: PSSVG

28 changes: 28 additions & 0 deletions Assets/PowerShellWeb-Animated.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
16 changes: 16 additions & 0 deletions Assets/PowerShellWeb.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
15 changes: 15 additions & 0 deletions Build/GitHub/Jobs/BuildPowerShellWeb.psd1
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
@{
"runs-on" = "ubuntu-latest"
if = '${{ success() }}'
steps = @(
@{
name = 'Check out repository'
uses = 'actions/checkout@v4'
},
@{
name = 'Use PSSVG Action'
uses = 'StartAutomating/PSSVG@main'
id = 'PSSVG'
}
)
}
9 changes: 9 additions & 0 deletions Build/PowerShellWeb.GitHub.GitHubWorkflow.PSDevOps.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#requires -Module PSDevOps
Import-BuildStep -SourcePath (
Join-Path $PSScriptRoot 'GitHub'
) -BuildSystem GitHubWorkflow

Push-Location ($PSScriptRoot | Split-Path)
New-GitHubWorkflow -Name "Build PowerShellWeb" -On Push, Demand -Job BuildPowerShellWeb -OutputPath .\.github\workflows\BuildPowerShellWeb.yml

Pop-Location
87 changes: 87 additions & 0 deletions Build/PowerShellWeb.PSSVG.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
#requires -Module PSSVG

$AssetsPath = $PSScriptRoot | Split-Path | Join-Path -ChildPath "Assets"

if (-not (Test-Path $AssetsPath)) {
New-Item -ItemType Directory -Path $AssetsPath | Out-Null
}

$fontName = 'Anta'
$fontName = 'Heebo'
$fontName = 'Noto Sans'
$strokeWidth = '0.5%'
foreach ($variant in '','Animated') {
$outputPath = if (-not $variant) {
Join-Path $assetsPath "PowerShellWeb.svg"
} else {
Join-Path $assetsPath "PowerShellWeb-$variant.svg"
}
svg -content $(
$fillParameters = [Ordered]@{
Fill = '#4488FF'
Class = 'foreground-fill'
}

$strokeParameters = [Ordered]@{
Stroke = '#4488FF'
Class = 'foreground-stroke'
StrokeWidth = $strokeWidth
}

$transparentFill = [Ordered]@{Fill='transparent'}
$animationDuration = [Ordered]@{
Dur = "4.2s"
RepeatCount = "indefinite"
}

SVG.GoogleFont -FontName $fontName

svg.symbol -Id psChevron -Content @(
svg.polygon -Points (@(
"40,20"
"45,20"
"60,50"
"35,80"
"32.5,80"
"55,50"
) -join ' ')
) -ViewBox 100, 100



SVG.circle -CX 50% -Cy 50% -R 42% @transparentFill @strokeParameters -Content @(
)
SVG.ellipse -Cx 50% -Cy 50% -Rx 23% -Ry 42% @transparentFill @strokeParameters -Content @(
if ($variant -match 'animate') {
svg.animate -Values '23%;16%;23%' -AttributeName rx @animationDuration
}
)
SVG.ellipse -Cx 50% -Cy 50% -Rx 16% -Ry 42% @transparentFill @strokeParameters -Content @(
if ($variant -match 'animate') {
svg.animate -Values '16%;23%;16%' -AttributeName rx @animationDuration
}
) -Opacity .9
SVG.ellipse -Cx 50% -Cy 50% -Rx 15% -Ry 42% @transparentFill @strokeParameters -Content @(
if ($variant -match 'animate') {
svg.animate -Values '15%;16%;15%' -AttributeName rx @animationDuration
}
) -Opacity .8
SVG.ellipse -Cx 50% -Cy 50% -Rx 42% -Ry 23% @transparentFill @strokeParameters -Content @(
if ($variant -match 'animate') {
svg.animate -Values '23%;16%;23%' -AttributeName ry @animationDuration
}
)
SVG.ellipse -Cx 50% -Cy 50% -Rx 42% -Ry 16% @transparentFill @strokeParameters -Content @(
if ($variant -match 'animate') {
svg.animate -Values '16%;23%;16%' -AttributeName ry @animationDuration
}
) -Opacity .9
SVG.ellipse -Cx 50% -Cy 50% -Rx 42% -Ry 15% @transparentFill @strokeParameters -Content @(
if ($variant -match 'animate') {
svg.animate -Values '15%;16%;15%' -AttributeName ry @animationDuration
}
) -Opacity .8

svg.use -Href '#psChevron' -Y 29% @fillParameters -Height 42%
) -ViewBox 0, 0, 200, 200 -OutputPath $outputPath
}
11 changes: 11 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<div align='center'>
<img src='Assets/PowerShellWeb-Animated.svg' />
</div>

# PowerShellWeb

## Script your Server

PowerShellWeb brings the joy of PowerShell to the world wide web.

We help you script your server by building full stack development tools with PowerShell.
Loading