Skip to content

nodoid/Plugin.ProgressViews

Repository files navigation

Plugin.ProgressViews

A .NET MAUI class library of animated, fully-bindable progress views, built with GraphicsView/IDrawable so they render identically on every platform.

Views

All views derive from TimedProgressView, which adds the shared bindable properties UseFixedTimer (bool, default false), TimerLength (TimeSpan, default 10s) and IsPercentageShown (bool, default true). When UseFixedTimer is true the view runs as a timer — driving progress 0→1 over TimerLength — otherwise the bound Progress is used.

View Description Key bindable properties
ClaudeProgressBar A bar with Claude's sweeping shimmer and a pulsing label. Progress, Text, Orientation (Horizontal/Vertical), LabelPosition (Below/Above), BarStyle (Solid/Slanted/Wave), BarThickness, TrackColor/ProgressColor/ShimmerColor
BucketProgress A bucket filling with rippling water that darkens with depth and can overflow. Progress, BucketColor, WaterColor, Size (Small/Medium/Large = 10/30/50% of screen height), CanOverflow
EggTimerProgress An hourglass; sand drains through the neck and the timer flips at 50%. Progress, FrameColor, SandColor, PercentPosition (8 compass points), Flip (Left/Right)
SnailProgress A snail crawling and leaving a slime trail; percentage shown in its shell. Progress, TrailColour, AnimationDirection (StartLeft/StartRight)
LeapProgress A frog, cricket or dolphin leaping between points in an arc. Progress, Animal (Frog/Cricket/Dolphin), ProgressPercentPoint (int)
CassetteProgressView A cassette whose tape winds from the full reel to the empty reel. Progress, FullBobbin (Left/Right), TapeTension (Normal/Floppy/Tight), ShowCase
ShooterProgressBar A themed weapon fires at a target; the SciFi Dalek/Cyberman hit a TARDIS/gold pile. Progress, Theme (SciFi/Western/War), WeaponType

See docs/views.md for the full per-view property reference.

Projects

  • Plugin.ProgressViews — the library (multi-targets Android, iOS, Mac Catalyst, Windows, plus a plain net10.0 target for testing).
  • Plugin.ProgressViews.Sample — a MAUI app that lets you pick a view and tweak its options live.
  • Plugin.ProgressViews.Tests — NUnit tests.

Building

dotnet build Plugin.ProgressViews.slnx
dotnet test  Plugin.ProgressViews.Tests/Plugin.ProgressViews.Tests.csproj

The Windows (WinUI) head can't be compiled on macOS because the WinUI XAML compiler is a Windows-only executable. build-windows.sh drives that build inside a Parallels "Windows 11" VM.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages