Next-Generation Enterprise Robotic Process Automation
Built for Windows. Powered by .NET 9.0. Designed for Scale.
================================================================================
Copyright (c) 2025 Yash (Yash_Personal_openSource). All rights reserved.
Built by: Yash Sharma (connect@yashsharma.ai)
Title: Sr AI/ML Engineer, Yash, Yash_Personal_openSource
Proprietary and Confidential Software
================================================================================
SnowBoard RPA Studio is an enterprise-grade robotic process automation platform built from the ground up using modern .NET 9.0. It enables organizations to automate repetitive tasks across desktop applications, web browsers, Java applications, legacy terminals, APIs, and Citrix/VDI environments through a visual workflow designerβwith zero coding required .
What Makes SnowBoard Different
Capability
SnowBoard RPA
Traditional RPA
Runtime
.NET 9.0 (modern, LTS)
.NET Framework 4.8 (legacy)
Workflow Format
JSON (version control friendly)
XAML/binary (hard to diff)
Web Automation
Playwright + CDP (background execution)
Selenium (foreground, flaky)
AI Integration
Azure OpenAI built-in
Separate license required
Computer Vision
YOLOv8 + OpenCV
Template matching only
Citrix/VDI
Native selectors via Remote Runtime
Image-based only
Self-Healing
Built-in selector auto-repair
Manual or paid add-on
Architecture
Config-driven (no compilation)
Code-behind (requires build)
Automation Targets
Desktop Applications β Win32, WPF, UWP, WinForms via Windows UI Automation API
Web Browsers β Microsoft Edge, Chrome, Firefox via Playwright + Chrome DevTools Protocol
Java Applications β Swing, AWT, Oracle Forms via Java Access Bridge
SAP GUI β Native scripting for SAP transactions
Terminal/Mainframe β IBM 3270/5250 via EHLLAPI
Citrix/VDI β Native selectors via Remote Runtime Agent + Computer Vision fallback
APIs β REST/SOAP with OAuth, JWT, Bearer, Basic authentication
AI-Powered Capabilities
Workflow Generation β Create workflows from natural language descriptions
UiPath Migration β Convert UiPath XAML workflows to SnowBoard JSON
Intelligent Data Extraction β Extract structured data from unstructured text
Error Debugging β AI-assisted troubleshooting and fix suggestions
Selector Generation β Generate UI selectors from descriptions
Enterprise Features
Self-Healing Selectors β Automatic selector repair with fuzzy matching
Process Mining β Event logging, XES export, workflow optimization
RBAC β Role-based access control with 40 permissions and 5 built-in roles
Secure Vaults β Azure Key Vault, CyberArk CCP, HashiCorp Vault integration
Package Signing β X.509 certificate-based digital signatures
Auto-Update β Built-in update system with SHA256 verification
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β SNOWBOARD RPA PLATFORM β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β
β β STUDIO (WPF) β β RUNNER (CLI) β β TRAY (UI) β β
β β Visual Designerβ β Unattended β β Attended Mode β β
β β + AI Assistant β β + Win Service β β Quick Launch β β
β ββββββββββ¬βββββββββ ββββββββββ¬βββββββββ ββββββββββ¬βββββββββ β
β β β β β
β ββββββββββββββββββββββΌβββββββββββββββββββββ β
β β β
β ββββββββββββββΌβββββββββββββ β
β β SNOWBOARD ENGINE β β
β β 178 Activities β β
β β 25+ Categories β β
β ββββββββββββββ¬βββββββββββββ β
β β β
β βββββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββ β
β β β β β
β βΌ βΌ βΌ β
β βββββββββββββββββ βββββββββββββββββββββ βββββββββββββββββββββ β
β β DESKTOP β β WEB β β JAVA β β
β β UI Automation β β Playwright+CDP β β Access Bridge β β
β β + Self-Heal β β Background Exec β β Swing/AWT β β
β βββββββββββββββββ βββββββββββββββββββββ βββββββββββββββββββββ β
β β
β βββββββββββββββββ βββββββββββββββββββββ βββββββββββββββββββββ β
β β COMPUTER β β REMOTE RUNTIME β β PROCESS MINING β β
β β VISION β β Citrix/VDI Agent β β Event Logging β β
β β YOLOv8+OpenCV β β TCP Port 9250 β β REST API β β
β βββββββββββββββββ βββββββββββββββββββββ βββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β INTEGRATIONS: Azure OpenAI β Azure Key Vault β CyberArk β MS Graph β Google β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Project
Type
Purpose
Snowboard.Engine
Library
Core RPA engine with 178 activities, automation APIs, workflow execution
Snowboard.Studio
WPF App
Visual workflow designer with AI assistant, debugger, RBAC
Snowboard.Runner
Console
CLI runner + Windows Service for unattended automation
Snowboard.Tray
WinForms
System tray app for attended automation quick-launch
Snowboard.NativeMessaging
Console
Native messaging bridge for Edge extension (web recorder)
Snowboard.RemoteRuntime
Service
Remote agent for Citrix/VDI with native UI Automation
Snowboard.ProcessMining.Api
Web API
REST API for process mining events and queue management
Snowboard.Engine.Tests
xUnit
Unit tests for engine components
Snowboard.Engine.IntegrationTests
xUnit
Integration tests for automation scenarios
Snowboard.Engine.PerformanceTests
Benchmark
BenchmarkDotNet performance profiling suite
178 Built-in Activities across 25+ Categories
Desktop UI Automation β 17 activities
Activity
Description
Click
Click on UI element
DoubleClick
Double-click on UI element
RightClick
Right-click context menu
TypeText
Type text into element
GetText
Extract text from element
SendHotkey
Send keyboard shortcuts
DragDrop
Drag and drop operations
Select
Select from dropdown
WaitForElement
Wait for element to appear
FocusWindow
Bring window to foreground
MaximizeWindow
Maximize application window
MinimizeWindow
Minimize application window
AttachWindow
Attach to running application
GetWindows
List open windows
HighlightElement
Visual element highlighting
OpenApplication
Launch application
CloseApplication
Close application
Web Automation β 18 activities
Activity
Description
OpenBrowser
Launch browser (Edge/Chrome/Firefox)
CloseBrowser
Close browser instance
Navigate
Navigate to URL
ClickWeb
Click web element
TypeWeb
Type into web element
GetWebText
Extract text from web element
GetWebAttribute
Get element attribute
SelectWebDropdown
Select dropdown option
CheckWebElement
Check/uncheck checkbox
ExecuteJavaScript
Execute custom JavaScript
WaitForWebElement
Wait for element
UploadFileWeb
Upload file to web
DownloadFile
Download file from web
AttachBrowser
Attach to existing browser
GetBrowserTabs
List browser tabs
SwitchTab
Switch to tab
NewTab
Open new tab
CloseTab
Close tab
Control Flow β 22 activities
Activity
Description
If
Conditional branching
ForEach
Iterate over collection
While
While loop
DoWhile
Do-while loop
TryCatch
Exception handling
Sequence
Sequential execution
Parallel
Parallel execution
ParallelForEach
Parallel iteration
Switch
Multi-way branching
Retry
Retry on failure
Delay
Fixed delay
Wait
Wait for condition
Break
Exit loop
Continue
Skip iteration
SetVariable
Set variable value
Log
Write to log
Comment
Documentation comment
ThrowException
Throw exception
InvokeWorkflow
Call sub-workflow
FlowDecision
Flowchart decision
StateMachine
State machine execution
CompensableScope
Transaction compensation
Excel & Data β 24 activities
Activity
Description
ReadExcel
Read Excel file to DataTable
WriteExcel
Write DataTable to Excel
ExcelApplicationScope
Excel workbook scope
ReadRange
Read cell range
WriteRange
Write to cell range
InsertRow
Insert row
DeleteRow
Delete row
FormatCells
Format cells
GetCellValue
Get single cell value
SetCellValue
Set single cell value
BuildDataTable
Create DataTable
AddDataRow
Add row to DataTable
FilterDataTable
Filter DataTable
JoinDataTables
Join DataTables
SortDataTable
Sort DataTable
MergeDataTables
Merge DataTables
PivotDataTable
Pivot DataTable
AggregateDataTable
Aggregate operations
RemoveDuplicateRows
Remove duplicates
LookupDataTable
Lookup value
OutputDataTable
Convert to string
AddBusinessDays
Add business days
SubtractBusinessDays
Subtract business days
GetBusinessDaysCount
Count business days
File Operations β 9 activities
Activity
Description
ReadFile
Read text file
WriteFile
Write text file
CopyFile
Copy file
MoveFile
Move file
DeleteFile
Delete file
FileExists
Check if file exists
GetFilesInFolder
List folder contents
CreateFolder
Create directory
DeleteFolder
Delete directory
Orchestrator & Queues β 9 activities
Activity
Description
AddQueueItem
Add item to queue
BulkAddQueueItems
Bulk add items
GetQueueItem
Get next queue item
SetTransactionStatus
Update item status
DeleteQueueItem
Delete queue item
PostponeQueueItem
Postpone processing
GetQueueStatistics
Get queue metrics
GetAsset
Get asset value
GetSecureCredential
Get credentials from vault
Computer Vision (Citrix/VDI) β 9 activities
Activity
Description
CVScreenScope
CV screen context
CVClick
Click detected element
CVTypeText
Type into detected element
CVGetText
Extract text via OCR
CVElementExists
Check element exists
CVExtractTable
Extract table data
CVHighlight
Highlight detection
CVHover
Hover over element
CVWaitForElement
Wait for element
User Dialogs (Attended) β 6 activities
Activity
Description
InputDialog
Text input dialog
MessageBox
Message display
SelectFile
File picker dialog
SelectFolder
Folder picker dialog
SelectFromList
List selection dialog
ShowForm
Custom form dialog
AI & IDP β 6 activities
Activity
Description
AskGPT
Query Azure OpenAI
AnalyzeText
Text analysis
ExtractStructuredData
Extract structured data
DigitizeDocument
Azure Form Recognizer
ClassifyDocument
Document classification
ExtractFormData
Form field extraction
Additional Categories
Category
Count
Examples
Java Automation
3
ClickJava, TypeJava, GetJavaText
Email
3
SendEmail, GetOutlookMail, SendOutlookMail
Database
1
ExecuteSQL (SQL Server, SQLite, Oracle)
API
1
HttpRequest (REST with OAuth/JWT/Bearer/Basic)
String Operations
7
StringReplace, StringSplit, RegexMatch
System
6
RunPowerShell, SetClipboard, KillProcess
Collections
7
AddToDictionary, SplitList, ContainsItem
Python Scripting
6
PythonScope, RunPythonScript, InvokePythonMethod
Microsoft 365
4
Office365Scope, SendMailGraph, UploadToOneDrive
Google Workspace
3
GoogleWorkspaceScope, SendGmail, GetGmail
Terminal/Mainframe
4
TerminalSession, TerminalSendKeys, TerminalGetText
Web Scraping
2
ExtractTable, ScrapeWithPagination
SAP GUI
4
SAPLogin, SAPExecuteTransaction, SAPGetTableData
Image/OCR
4
TakeScreenshot, ClickImage, ExtractTextOCR, ReadPDF
Citrix Legacy
3
ClickImageCitrix, WaitForImage, GetTextOCRCitrix
Component
Technology
Version
Runtime
.NET
9.0
Language
C#
13.0
UI Framework
WPF
.NET 9.0
Serialization
System.Text.Json
9.0.1
Target
Technology
Version
Web Browsers
Microsoft Playwright
1.49.0
Desktop Apps
Windows UI Automation
Built-in
Java Apps
Java Access Bridge
Native
Input Simulation
Win32 SendInput
P/Invoke
Computer Vision
Emgu.CV (OpenCV)
4.9.0
OCR
Tesseract + Windows OCR
5.2.0
Category
Technology
Version
AI/LLM
Azure.AI.OpenAI
2.1.0
Excel
ClosedXML
0.104.2
PDF
PdfPig
0.1.9
Database
Microsoft.Data.SqlClient
5.2.2
Email
Outlook Interop
15.0
Testing
xUnit + BenchmarkDotNet
2.9.3 / 0.14.0
# Clone or navigate to project directory
cd SnowBoard- v2
# Build entire solution (Debug + Release)
.\build.ps1
# Install Playwright browsers (one-time)
pwsh - Command " & { .\Snowboard.Engine\bin\Release\net9.0-windows\playwright.ps1 install chromium }"
# Launch Studio
.\Snowboard.Studio\bin\Release\net9.0 - windows\Snowboard.Studio.exe
Create a file called hello.json:
{
"name" : " HelloWorld" ,
"version" : " 1.0.0" ,
"activities" : [
{
"type" : " OpenApplication" ,
"properties" : {
"ApplicationPath" : " notepad.exe"
}
},
{
"type" : " Delay" ,
"properties" : {
"Milliseconds" : 1000
}
},
{
"type" : " TypeText" ,
"properties" : {
"Text" : " Hello from SnowBoard RPA!"
}
}
]
}
Run it:
.\Snowboard.Runner\bin\Release\net9.0 - windows\Snowboard.Runner.exe hello.json
SnowBoard-v2/
βββ Snowboard.sln # Solution file
βββ README.md # This file
βββ BUILD.md # Build instructions
βββ VERSION.txt # Release notes
β
βββ Snowboard.Engine/ # Core RPA Engine (DLL)
β βββ Activities/ # 178 activity implementations
β β βββ Basic/ # Desktop UI activities
β β βββ Web/ # Web automation activities
β β βββ ControlFlow/ # Flow control activities
β β βββ Data/ # Excel & DataTable activities
β β βββ ComputerVision/ # CV activities
β β βββ AI/ # AI/GPT activities
β β βββ IDP/ # Document processing
β β βββ [20+ more categories]
β βββ Automation/ # Automation APIs
β β βββ DesktopAutomation.cs # Windows UI Automation
β β βββ WebAutomation.cs # Playwright + CDP
β β βββ JavaAutomation.cs # Java Access Bridge
β β βββ UIElementFinder.cs # Element finding + caching
β β βββ InputSimulation.cs # Win32 SendInput
β β βββ FuzzyMatcher.cs # Levenshtein matching
β βββ AI/ # AI Assistant
β β βββ AIAssistant.cs # Azure OpenAI integration
β βββ ComputerVision/ # CV subsystem
β β βββ CVDetector.cs # YOLOv8 + OpenCV
β β βββ SurfaceAutomation.cs # Image-based automation
β β βββ RemoteRuntime.cs # Remote CV client
β βββ SelfHealing/ # Self-healing selectors
β β βββ HealingEngine.cs # Core healing logic
β β βββ SelectorAnalyzer.cs # Selector analysis
β β βββ HealingModelTrainer.cs # ML model training
β βββ ProcessMining/ # Process mining
β β βββ ProcessLogger.cs # Event logging
β β βββ QueueApiService.cs # Queue management
β βββ RBAC/ # Access control
β β βββ RBACService.cs # Role-based permissions
β βββ SecureVault/ # Credential vaults
β β βββ AzureKeyVaultProvider.cs
β β βββ CyberArkProvider.cs
β β βββ HashiCorpVaultProvider.cs
β βββ Orchestrator/ # Queue & Asset management
β β βββ QueueManager.cs
β β βββ AssetManager.cs
β βββ WorkflowEngine.cs # Workflow execution
β βββ PackageManager.cs # .snowboard packages
β βββ EngineInitializer.cs # Activity registration
β
βββ Snowboard.Studio/ # Visual Designer (WPF)
β βββ MainWindow.xaml(.cs) # Main IDE window
β βββ Controls/
β β βββ FlowchartDesigner.xaml(.cs) # Visual workflow designer
β β βββ DebugPanel.xaml(.cs) # Debugger UI
β β βββ GitTeamPanel.xaml(.cs) # Git integration
β βββ LoginWindow.xaml(.cs) # RBAC login
β βββ SettingsWindow.xaml(.cs) # Configuration
β βββ UIExplorerWindow.xaml(.cs) # Element inspector
β βββ ObjectRepositoryWindow.xaml(.cs) # Selector repository
β βββ ProcessMiningWindow.xaml(.cs) # Process analytics
β βββ HealingSuggestionsWindow.xaml(.cs) # Self-healing UI
β βββ CVInspectorWindow.xaml(.cs) # CV debugging
β βββ RemoteRuntimeWindow.xaml(.cs) # Remote agent config
β βββ UserManagementWindow.xaml(.cs) # User admin
β βββ RoleManagementWindow.xaml(.cs) # Role admin
β βββ UpdateNotificationWindow.xaml(.cs) # Auto-update UI
β
βββ Snowboard.Runner/ # CLI Runner
β βββ Program.cs # Headless executor
β
βββ Snowboard.Tray/ # System Tray App
β βββ Program.cs # Attended automation launcher
β
βββ Snowboard.RemoteRuntime/ # Citrix/VDI Agent
β βββ Program.cs # TCP server (port 9250)
β βββ README.md # Agent documentation
β
βββ Snowboard.ProcessMining.Api/ # Process Mining REST API
β βββ Controllers/ # API controllers
β βββ Program.cs # ASP.NET Core host
β βββ README.md # API documentation
β
βββ Snowboard.NativeMessaging/ # Edge Extension Bridge
β βββ Program.cs # Native messaging host
β
βββ Snowboard.Engine.Tests/ # Unit Tests
βββ Snowboard.Engine.IntegrationTests/ # Integration Tests
βββ Snowboard.Engine.PerformanceTests/ # Performance Benchmarks
β
βββ EdgeExtension/ # Web Recorder Extension
β βββ manifest.json # Manifest V3
β βββ background.js # Service worker
β βββ content.js # Element capture
β
βββ Docs/ # Documentation
β βββ Architecture/ # Architecture docs (9 parts)
β βββ Process_Flows/ # Process flow diagrams
β βββ WebAutomation.md
β βββ DesktopAutomation.md
β βββ Auto-Update-Guide.md
β βββ [more guides]
β
βββ Installer/ # MSI Installers
β βββ build.ps1 # Build script
β βββ SnowBoard-Desktop-v3.wxs # Desktop installer
β βββ SnowBoard-VM-v3.wxs # VM installer
β βββ wix311/ # WiX Toolset
β
βββ Templates/ # Workflow Templates
β βββ REFramework.json # Enterprise template
β
βββ Examples/ # Example Workflows
βββ ApiWorkflowExamples/
βββ HybridWorkflowExamples/
Drag-and-drop activity design on flowchart canvas
Activity palette with 25+ categorized activities
Properties panel for activity configuration
Variable manager with type support
Output console with real-time execution logs
Breakpoints β Pause execution at any activity
Step execution β Step into, over, and out
Watch variables β Monitor variable values in real-time
Call stack β View execution hierarchy
Natural language workflow generation
UiPath migration β Convert XAML to JSON
Selector generation from descriptions
Error debugging assistance
Live element tree inspection
Selector generation with copy-to-clipboard
Element highlighting in target application
Attribute inspection
Suggestion mode β Review before applying
Auto-repair mode β Automatic selector fixes
Confidence threshold β 0.85 default
Telemetry β Track healing patterns
Centralized selectors management
Version control friendly format
Shared across workflows
Import/Export capabilities
Remote Runtime (Citrix/VDI)
The Remote Runtime Agent enables native UI Automation inside Citrix/VDI environmentsβeliminating the need for image-based automation.
βββββββββββββββββββββββββββ βββββββββββββββββββββββββββ
β Snowboard Studio β TCP β Remote Runtime Agent β
β (Developer Machine) ββββββββββΊβ (Citrix/VDI Machine) β
βββββββββββββββββββββββββββ 9250 βββββββββββββββββββββββββββ
Benefits:
10x faster than image matching
Works with covered windows
Native selector reliability
UDP auto-discovery (port 9251)
REST API for process event logging and queue management:
GET /api/health # Health check
GET /api/processlogs/metrics # Execution metrics
GET /api/processlogs/export # Export logs (JSON/XES)
GET /api/queues # List queues
POST /api/queues/{name}/items # Add queue item
GET /api/queues/{name}/next # Get next item
Automatic selector repair using fuzzy matching:
Configuration
Default
Description
Mode
Suggestions
SuggestionsOnly or AutoRepair
Max Fuzzy Expansion
0.35
Levenshtein distance threshold
Min Confidence
0.85
Auto-repair confidence threshold
Max Candidates
10
Maximum alternative selectors
Telemetry Retention
90 days
Healing pattern storage
Important
Azure Cloud Services Note: Cloud orchestration capabilities (Azure Service Bus, Azure Container Instances, Azure Monitor) are dependent on the Snowboard Orchestrator team's architecture decisions. Studio is fully modular and can quickly incorporate any Azure services required. Current implementation focuses on Studio functionality with local SQLite-based orchestrator-lite for development and testing.
Supported Vault Providers:
Provider
Authentication
Use Case
Azure Key Vault
Managed Identity / Service Principal
Azure-native deployments
CyberArk CCP
Client certificate + App ID
Enterprise CyberArk environments
HashiCorp Vault
Token / AppRole
Multi-cloud / Kubernetes
# Build entire solution (Debug + Release)
.\build.ps1
# Create MSI installers
cd Installer
.\build.ps1
Installer
Components
Size
SnowBoard-Desktop
Studio + Runner + Tray + Extensions
~543 MB
SnowBoard-Runner
Runner + RemoteRuntime + Tray + Extensions
~52 MB
# Default installation
msiexec / i SnowBoard- Desktop- 1.0 .0. msi / quiet / norestart
# Custom path
msiexec / i SnowBoard- Desktop- 1.0 .0. msi / quiet INSTALLFOLDER= " D:\SnowBoard"
Mode
Command
Use Case
Interactive
Launch Studio
Development & debugging
Attended CLI
Runner.exe workflow.json
User-triggered automation
Headless
Runner.exe workflow.json --headless
CI/CD pipelines
Windows Service
sc create ...
Unattended 24/7 operation
System Tray
Launch Tray app
Quick-launch attended bots
Comprehensive documentation is available in the Docs/ folder:
Architecture Documentation
Document
Description
1_Executive_Summary.md
Platform overview and capabilities
2_System_Overview.md
Layered architecture and deployment models
3_Component_Architecture.md
Deep dive into all 10 projects
4_Bot_Development_&_Deployment_Flow.md
Complete bot lifecycle
5_Dispatcher-Performer_Pattern.md
High-volume processing architecture
6_Detailed_Component_Breakdown.md
Technical component reference
7_Data_Flow_&_Communication.md
Communication patterns and protocols
8_Technology_Stack.md
Complete technology reference
9_Security_&_Authentication.md
Enterprise security architecture
Document
Description
WebAutomation.md
Playwright + CDP usage guide
DesktopAutomation.md
Windows UI Automation selectors
ApiIntegration.md
REST API activities guide
HybridAutomation.md
Cross-context workflows
HeadlessAutomation.md
Headless browser execution
Auto-Update-Guide.md
Auto-update system configuration
Component
Requirement
Operating System
Windows 10 (1809+) or Windows 11
.NET Runtime
.NET 9.0 Runtime
Memory
4 GB RAM
Disk Space
500 MB + browser binaries
Component
Requirement
Operating System
Windows 11
Memory
8 GB RAM
Disk Space
2 GB SSD
Display
1920Γ1080
Dependency
Required For
Playwright Browsers
Web automation
Java Runtime (JRE 8+)
Java application automation
Microsoft Outlook
Outlook email activities
SAP GUI
SAP automation activities
Metric
Value
Solution Projects
10 .NET 9.0 projects
Built-in Activities
178 activities
Activity Categories
25+ categories
Lines of Code
~79,500 C#
NuGet Dependencies
30+ packages
Copyright (c) 2025 Yash (Yash_Personal_openSource). All rights reserved.
This software is proprietary and confidential.
Unauthorized copying, distribution, or use is strictly prohibited.
For licensing inquiries, contact: connect@yashsharma.ai
Author
Yash Sharma
Title
Sr AI/ML Engineer
Organization
Yash, Yash_Personal_openSource
Email
connect@yashsharma.ai
SnowBoard RPA Studio v1.0.0
178 Activities β’ 10 Projects β’ Enterprise Ready
Built with .NET 9.0 β’ Playwright β’ Azure OpenAI β’ YOLOv8
Β© 2025 Yash (Yash_Personal_openSource). All rights reserved.