A minimal, distraction-free text editor for macOS — inspired by Windows Notepad but built natively with AppKit.
| Light Mode | Dark Mode |
|---|---|
![]() |
![]() |
| Editing code | Font Panel |
|---|---|
![]() |
![]() |
Toolbar — New · Open · Save · Word Wrap

- Plain text editing — open, edit, and save
.txtand any plain text file - Toolbar — quick access icons for New, Open, Save, and Word Wrap
- Custom app icon — hand-crafted notepad icon with spiral binding and pencil
- Word wrap toggle — switch between wrapped and unwrapped view
- Dirty state tracking — window dot indicator and title suffix when unsaved changes exist
- Find — built-in macOS find panel (
⌘F) - Font panel — change font family, size, and style via Format → Font
- Unsaved-changes prompt — asks to save on New, Open, Close, and Quit
- Native macOS look — uses system colors, respects Dark Mode
See REQUIREMENTS.md for full details.
| Requirement | Minimum |
|---|---|
| macOS | 12.0 Monterey |
| Architecture | Apple Silicon or Intel |
| Disk space | < 1 MB |
- Go to the Releases page
- Download
SimpleNotepad-<version>.dmg - Open the DMG, drag SimpleNotepad to your Applications folder
- Launch from Finder or Spotlight
On first launch macOS may show a Gatekeeper warning because the app is not notarized. Right-click the app → Open → Open to bypass it.
git clone https://github.com/<your-username>/SimpleNotepad.git
cd SimpleNotepad
chmod +x build.sh
./build.shThe script compiles the app and produces SimpleNotepad-<version>.dmg in the project root.
| Action | Shortcut |
|---|---|
| New document | ⌘N |
| Open file | ⌘O |
| Save | ⌘S |
| Save As | ⌘⇧S |
| Close | ⌘W |
| Quit | ⌘Q |
| Find | ⌘F |
| Bold | ⌘B |
| Italic | ⌘I |
| Underline | ⌘U |
| Show Fonts | ⌘T |
| Minimize | ⌘M |
SimpleNotepad/
├── Sources/
│ ├── main.swift # Entry point
│ ├── AppDelegate.swift # App lifecycle & menu bar
│ └── MainWindowController.swift # Window, text view & toolbar
├── Resources/
│ └── AppIcon.icns # App icon (all sizes)
├── SimpleNotepad.app/ # Pre-built app bundle
├── build.sh # Build & DMG script
├── Makefile # Convenience targets
├── REQUIREMENTS.md
├── CHANGELOG.md
├── LICENSE
└── SPEC.md
No Xcode project file is needed. The app is compiled directly with swiftc:
# Build the app
make build
# Build the app + create a distributable DMG
make dmg
# Run the app
make run
# Clean build artifacts
make clean- Fork the repository
- Create a feature branch:
git checkout -b feature/my-feature - Commit your changes:
git commit -m "Add my feature" - Push to the branch:
git push origin feature/my-feature - Open a Pull Request
Please keep the scope minimal — this is intentionally a simple editor.
This project is licensed under the MIT License. See LICENSE for details.
Built with AppKit — no third-party dependencies.



