You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Convert App.ico to babysmash.png for Linux
- Include icon in Linux tarball
- Update README with full Linux install instructions
- Add icon installation steps for app menu
@@ -11,65 +11,135 @@ As babies or children smash on the keyboard, colored shapes, letters and numbers
11
11
- 🎨 Colorful shapes with happy faces (Circle, Heart, Hexagon, Star, Triangle, and more)
12
12
- 🔤 Letters and numbers with text-to-speech
13
13
- 🔊 Fun sounds and giggles
14
-
- 🖥️ Multi-monitor support with Per-Monitor DPI awareness
15
-
- 🔒 Locks out Windows key, Ctrl+Esc, Alt+Tab to prevent accidental exits
16
-
- 🔄 **Auto-updates** via GitHub Releases
14
+
- 🖥️ Multi-monitor support
15
+
- 🔒 Locks out system keys to prevent accidental exits
16
+
- 🔄 **Auto-updates** via GitHub Releases (Windows)
17
+
- 🐧 **Linux support** via Avalonia
17
18
18
-
## Keyboard Shortcuts
19
+
## Downloads
20
+
21
+
| Platform | Download | Notes |
22
+
|----------|----------|-------|
23
+
|**Windows**|[BabySmash-Setup.exe](https://github.com/shanselman/babysmash/releases/latest/download/BabySmash-Setup.exe)| Installer with auto-updates |
24
+
|**Windows**|[BabySmash-win-x64.zip](https://github.com/shanselman/babysmash/releases/latest/download/BabySmash-win-x64.zip)| Portable version |
BabySmash blocks most keyboard shortcuts, but **Windows touchpad gestures** (like three-finger swipe for Task View) are handled at the OS level and cannot be blocked by applications.
47
+
48
+
**To prevent accidental exits via touchpad:**
49
+
50
+
1. Open **Windows Settings** → **Bluetooth & devices** → **Touchpad**
51
+
2. Under **Three-finger gestures**, set "Swipes" to **Nothing**
52
+
3. Optionally disable four-finger gestures too
53
+
54
+
---
55
+
56
+
## Linux
57
+
58
+
### Installation
59
+
60
+
1. Download and extract:
61
+
```bash
62
+
tar -xzf BabySmash-linux-x64.tar.gz
63
+
```
64
+
65
+
2. Install dependencies:
66
+
```bash
67
+
# For text-to-speech
68
+
sudo apt install espeak
69
+
70
+
# For audio (one of these)
71
+
sudo apt install pulseaudio-utils # for paplay
72
+
# or
73
+
sudo apt install alsa-utils # for aplay
74
+
```
75
+
76
+
3. Run:
77
+
```bash
78
+
./babysmash
79
+
```
80
+
81
+
### Add to Application Menu (Optional)
82
+
83
+
To make BabySmash appear in your desktop's app launcher:
BabySmash automatically uses your **Windows keyboard language** for:
118
+
BabySmash automatically uses your **keyboard language** for:
29
119
30
120
1.**Text-to-speech voice** - Shapes and colors are spoken in your language
31
121
2.**Shape/color names** - Translated to your locale (if available)
32
122
3.**Word order** - "Red Circle" (English) vs "Círculo Vermelho" (Portuguese)
33
123
34
-
**Supported locales:** English (en), Russian (ru), Portuguese (pt-BR, pt-PT)
35
-
36
-
### Changing the Language
37
-
38
-
1. Change your Windows keyboard language (Win+Space or taskbar language selector)
39
-
2. BabySmash will use the matching TTS voice and translations
124
+
**Supported locales:** English (en), German (de), Spanish (es), French (fr), Greek (el), Latvian (lv), Portuguese (pt-BR, pt-PT), Russian (ru)
40
125
41
126
### Adding a New Language
42
127
43
-
Create a JSON file in `Resources/Strings/` named `{locale}.json` (e.g., `de-DE.json` for German):
128
+
Create a JSON file in `Shared/Resources/Strings/` named `{locale}.json` (e.g., `ja-JP.json` for Japanese):
44
129
45
130
```json
46
131
{
47
132
"ColorShapeFormat": "{0} {1}",
48
-
"Circle": "Kreis",
49
-
"Red": "Rot",
133
+
"Circle": "丸",
134
+
"Red": "赤",
50
135
...
51
136
}
52
137
```
53
138
54
139
- Use `"{0} {1}"` for color-first languages (English: "Red Circle")
55
140
- Use `"{1} {0}"` for shape-first languages (Portuguese: "Círculo Vermelho")
56
141
57
-
**Note:** You may need to install the TTS voice for your language in Windows Settings → Time & Language → Speech.
58
-
59
-
## Touchpad Gestures
60
-
61
-
BabySmash blocks most keyboard shortcuts, but **Windows touchpad gestures** (like three-finger swipe for Task View) are handled at the OS level and cannot be blocked by applications.
62
-
63
-
**To prevent accidental exits via touchpad:**
64
-
65
-
1. Open **Windows Settings** → **Bluetooth & devices** → **Touchpad**
66
-
2. Under **Three-finger gestures**, set "Swipes" to **Nothing**
Originally developed by [Scott Hanselman](https://www.hanselman.com), based on AlphaBaby.
95
174
96
175
-**v1-v2**: Original .NET Framework 3.5 version
97
176
-**v3.0**: Migrated to .NET 10, single-file deployment
98
-
-**v4.0**: Added Updatum auto-updates, Azure code signing, new icon
177
+
-**v4.0**: Linux support via Avalonia, shared resources, auto-updates
99
178
100
179
> **Looking for the original code?** The legacy .NET Framework 3.5 version is preserved in the [legacy-dotnet35](https://github.com/shanselman/babysmash/tree/legacy-dotnet35) branch.
101
180
102
-
## Cross-Platform (Future)
103
-
104
-
Planning is underway for an **Avalonia port** to bring BabySmash to **Linux**!
105
-
106
-
📋 See the [Avalonia Port Plan](AVALONIA_PORT_PLAN.md) for the complete roadmap and architecture.
107
-
108
-
**Documentation**:
109
-
-[Planning Document](AVALONIA_PORT_PLAN.md) - Comprehensive plan for Linux port
0 commit comments