Documentation Index
Fetch the complete documentation index at: https://docs.tablepro.app/llms.txt
Use this file to discover all available pages before exploring further.
Development Setup
Prerequisites
| Software | Version | Notes |
|---|---|---|
| macOS | 14.0+ (Sonoma) | Target platform |
| Xcode | 15.0+ | Includes Swift 5.9 |
| Tool | Install | Purpose |
|---|---|---|
| SwiftLint | brew install swiftlint | Linting |
| SwiftFormat | brew install swiftformat | Code formatting |
| GitHub CLI | brew install gh | Used by download-libs.sh |
Quick Start
Download native libraries
.a files (libmariadb, libpq, etc.) from GitHub Releases into Libs/. Takes a few seconds.Configure signing
- Select the TablePro target
- Go to Signing & Capabilities
- Change Team to your Apple Developer account (free account works)

Project Structure
TablePro
Core
Views
Models
ViewModels
Extensions
Theme
Resources
Plugins
Libs
TableProTests
docs
scripts
Running Tests
Cmd+U.
Linting and Formatting
Troubleshooting
| Problem | Fix |
|---|---|
| Linker errors about missing symbols | Run scripts/download-libs.sh |
| SPM resolution fails | Clean build folder (Cmd+Shift+K), reopen Xcode |
| Build fails after pulling | Delete derived data: rm -rf ~/Library/Developer/Xcode/DerivedData |
Missing Secrets.xcconfig error | Run touch Secrets.xcconfig in project root |
| Code signing errors | Change Team in Signing & Capabilities |
The
-skipPackagePluginValidation flag is required because CodeEditSourceEditor (an SPM dependency) bundles a SwiftLint plugin. Without this flag, CLI builds fail with a validation error.
