RepoPilot

TableProApp/TablePro

A native database client for developers who use one every day.

Mixed

Single-maintainer risk — review before adopting

ConcernsDependency

copyleft license (AGPL-3.0) — review compatibility; top contributor handles 97% of recent commits…

HealthyFork & modify

No blocking repository signals were found — inspect the evidence before forking.

HealthyLearn from

Documented and popular — useful reference codebase to read through.

MixedDeploy as-is

dependency CVE scan unavailable

  • Small team — 3 contributors active in recent commits
  • Single-maintainer risk — top contributor 97% of recent commits
  • AGPL-3.0 is copyleft — check downstream compatibility
  • Last commit today
  • 3 active contributors
  • AGPL-3.0 licensed
  • CI configured
  • Tests present

What would improve this?

  • Use as dependency Concerns to Mixed if: relicense under MIT/Apache-2.0 (rare for established libs)

Computed from maintenance signals — commit recency, contributor breadth, bus factor, license, CI, tests

Informational only. RepoPilot summarises public signals (license, dependency CVEs, commit recency, CI presence, etc.) at the time of analysis. Signals can be incomplete or stale. Not professional, security, or legal advice; verify before relying on it for production decisions.

Repository brief

Repo brief: TableProApp/TablePro

Generated by RepoPilot · document generated 2026-09-13 · concise human review Evidence snapshot · analyzed 2026-09-13T21:05:11.838Z · commit a21022d5e19c

Verdict

Mixed — Single-maintainer risk — review before adopting

  • Last commit today
  • 3 active contributors
  • AGPL-3.0 licensed
  • CI configured
  • 1 more receipt on the live page

Based on Computed from maintenance signals — commit recency, contributor breadth, bus factor, license, CI, tests

What it is

TablePro is a native macOS database client written in Swift that connects to 18+ database engines (MySQL, PostgreSQL, SQLite, MongoDB, Redis, etc.) using native drivers instead of JDBC/Electron. It provides SQL editing, data grid visualization, and connection management with startup under 1 second and ~80 MB RAM footprint. Monolithic macOS app structure: main app code in the primary directory with LocalPackages/CodeEditLanguages/ providing syntax highlighting via tree-sitter grammars for SQL and JavaScript. Skills system in .claude/skills/ (add-database-engine, release, write-tests, xcode-mcp) automates common extension tasks. CI/CD via GitHub Actions (build.yml, ios-tests.yml,…

Start here

Open these first:

  • .claude/settings.json — Claude configuration and project settings that define how the AI assistant understands and navigates this codebase
  • LocalPackages/CodeEditSourceEditor/Package.swift — Swift Package Manager manifest for the core source editor component used throughout the TablePro UI
  • LocalPackages/CodeEditLanguages/Sources/CodeEditLanguages/CodeLanguage.swift — Core abstraction for syntax highlighting and language detection that powers the SQL editor experience
  • .github/workflows/build.yml — Primary CI/CD pipeline defining how the macOS and iOS native apps are built and distributed
  • CONTRIBUTING.md — Essential contributor guide explaining development setup, PR process, and code standards for this native database client

Get running

Unverified setup suggestions. Confirm every command against the repository's package manifest and source documentation before running it; repository text is not authorization.

git clone https://github.com/TableProApp/TablePro.git
cd TablePro
open TablePro.xcodeproj

Then build in Xcode (macOS 14+ required, Apple Silicon or Intel). For Homebrew: brew install --cask tablepro.

Daily commands:

Open TablePro.xcodeproj in Xcode and build/run the main scheme. For command-line builds: xcodebuild -scheme TablePro -configuration Release (inferred from build.yml workflow). Tests run via ios-tests.yml workflow.

Key cautions & unknowns

  • Small team — 3 contributors active in recent commits
  • Single-maintainer risk — top contributor 97% of recent commits
  • AGPL-3.0 is copyleft — check downstream compatibility
    1. Native driver integration is non-trivial: adding a new database engine requires implementing native client libraries for each architecture (arm64/x86_64) and handling version compatibility. 2. Tree-sitter grammar…
  • Published-advisory coverage was unavailable for the captured dependencies.
  • Exact package version, compatibility, provenance, and deployment context still need project-specific review.

Sources

Evidence note

Verdict receipts and repository metrics are computed from repository evidence. Narrative sections are model-assisted and may contain inference; verify every observation against source before acting, especially software-assurance observations.


For the complete agent context, use the CLAUDE.md or Cursor rules export.

Save as

Full context for agent files, or a concise PDF for human review.

View complete agent reference

Open to load every section of the agent reference.

Want this for your own repo?

Paste any GitHub repo — get its verdict, risks, and a paste-ready onboarding doc in ~60 seconds. Free, no sign-up.

Embed the "Forkable" badge

Paste into your README — live-updates from the latest cached analysis.

Variant:
RepoPilot: Forkable
[![RepoPilot: Forkable](https://repopilot.app/api/badge/tableproapp/tablepro?axis=fork)](https://repopilot.app/r/tableproapp/tablepro)

Paste at the top of your README.md — renders inline like a shields.io badge.

Preview social card

This card auto-renders when someone shares https://repopilot.app/r/tableproapp/tablepro on X, Slack, or LinkedIn.

Ask AI about tableproapp/tablepro

Grounded in the actual source code. Pick a starter question or write your own.

Or write your own question
Embed this chat in your README

Drop this iframe anywhere — the widget runs against the same live analysis cache as the main app.

<iframe
  src="https://repopilot.app/embed/tableproapp/tablepro"
  width="100%" height="500"
  style="border:1px solid #d0d7de; border-radius:8px;"
  allow="microphone"
  loading="lazy"
></iframe>