https://github.com/truepadawan/scribble
A cross-platform digital whiteboard engineered with .NET and Avalonia UI. It leverages SkiaSharp for cross-platform graphics rendering
https://github.com/truepadawan/scribble
avalonia desktop-application dotnet linux-app signalr
Last synced: 2 months ago
JSON representation
A cross-platform digital whiteboard engineered with .NET and Avalonia UI. It leverages SkiaSharp for cross-platform graphics rendering
- Host: GitHub
- URL: https://github.com/truepadawan/scribble
- Owner: TruePadawan
- License: gpl-3.0
- Created: 2025-10-29T18:38:48.000Z (8 months ago)
- Default Branch: master
- Last Pushed: 2026-04-06T07:00:31.000Z (2 months ago)
- Last Synced: 2026-04-06T08:48:13.014Z (2 months ago)
- Topics: avalonia, desktop-application, dotnet, linux-app, signalr
- Language: C#
- Homepage:
- Size: 3.32 MB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Scribble
A cross-platform (windows/linux) digital whiteboard application
### Tech Stack
- [C#/.NET](https://dotnet.microsoft.com/en-us/): Core
- [Avalonia UI](https://avaloniaui.net): For consistent cross-platform user interface
- [Icons8](https://icons8.com): Icons
- [SkiaSharp](https://skiasharp.com): Graphics rendering
- [SignalR](https://dotnet.microsoft.com/en-us/apps/aspnet/signalr): Collaborative drawing
- [Render + Docker](https://render.com/): Hosting the SignalR server
### Current Progress
**Existing tools**: Pencil, Eraser, Pan, Line, Arrow, Ellipse, Rectangle, Select, Text
**I'm working on**:
- UI/UX improvements
- Layering system



## Local Setup
### Prerequisites
* [.NET SDK](https://dotnet.microsoft.com/download) (Version 8.0 or newer recommended)
### Running the Application
To run Scribble locally, you will need to start both the backend server and the client application.
1. **Clone the repository and restore the packages:**
```bash
git clone https://github.com/TruePadawan/Scribble.git
cd Scribble
dotnet restore
```
2. **Run the program**
```bash
cd Scribble.Desktop
dotnet run
```
3. If you want to use multi-user drawing, you have to run the Scribble.Server project first (can just set up multi project launch on whatever IDE you're using)
```bash
cd Scribble.Server
dotnet run
```