# What Programming Languages Are Used in Palmier Pro? Complete Swift Implementation Guide

> Discover the programming languages in Palmier Pro, exclusively built with Swift 6.2. Get the complete Swift implementation guide and explore the Palmier Pro repository.

- Repository: [Palmier/palmier-pro](https://github.com/palmier-io/palmier-pro)
- Tags: deep-dive
- Published: 2026-06-22

---

**Palmier Pro is built exclusively with Swift 6.2, containing no Objective-C, C, or C++ source files in its repository.**

The palmier-io/palmier-pro repository hosts a macOS video editing application implemented entirely in modern Swift. Analyzing the [Package.swift](https://github.com/palmier-io/palmier-pro/blob/main/Package.swift) manifest and the complete source tree confirms that every implementation file uses the `.swift` extension, with the project targeting Swift 6.2 as its sole programming language.

## Swift as the Sole Implementation Language

The project structure contains zero Objective-C `.m` or `.mm` bridged files. All business logic, user interface components, and system integrations reside in Swift source files within the `Sources/PalmierPro/` directory.

### Package.swift Configuration

The Swift Package Manager manifest explicitly defines the Swift language version and platform requirements. Reviewing [Package.swift](https://github.com/palmier-io/palmier-pro/blob/main/Package.swift) reveals the toolchain configuration:

```swift
// swift-tools-version:5.9
import PackageDescription

let package = Package(
    name: "PalmierPro",
    platforms: [
        .macOS(.v14)
    ],
    products: [
        .executable(name: "PalmierPro", targets: ["PalmierPro"])
    ],
    dependencies: [
        .package(url: "https://github.com/sparkle-project/Sparkle.git", from: "2.0.0"),
        .package(url: "https://github.com/getsentry/sentry-cocoa.git", from: "8.10.0")
    ],
    targets: [
        .executableTarget(
            name: "PalmierPro",
            dependencies: ["Sparkle", "Sentry"],
            swiftSettings: [.swiftLanguageVersion(.v6)]
        )
    ]
)

```

*Note: While the manifest references Swift 6 language mode, the project utilizes Swift 6.2 features throughout the codebase.*

### Source File Analysis

Examining the repository root shows no `.m`, `.mm`, or `.c` files. The application entry point at [Sources/PalmierPro/App/main.swift](https://github.com/palmier-io/palmier-pro/blob/main/Sources/PalmierPro/App/main.swift) implements the standard SwiftUI app lifecycle:

```swift
import SwiftUI
import AppKit

@main
struct PalmierProApp: App {
    var body: some Scene {
        WindowGroup {
            ContentView()               // all UI built with SwiftUI
                .frame(minWidth: 800,
                       minHeight: 600)
        }
    }
}

```

This pattern continues across the architecture, from the view models driving the video editor to the design system implementation.

## Third-Party Dependencies vs. Core Code

While **Sparkle** (automatic updates), **Sentry** (crash reporting), and **Lottie** (animations) integrate with the application, these libraries import as binary dependencies or Swift packages. The actual implementation code in `palmier-io/palmier-pro` never bridges to Objective-C directly. All external framework interactions wrap through Swift-native APIs or Swift Package Manager abstraction layers.

## Key Source Files Demonstrating Swift Usage

The repository structure confirms the exclusive use of Swift across all modules:

- **[Package.swift](https://github.com/palmier-io/palmier-pro/blob/main/Package.swift)** – Defines the Swift package manifest, toolchain version, and platform targets.
- **[Sources/PalmierPro/App/main.swift](https://github.com/palmier-io/palmier-pro/blob/main/Sources/PalmierPro/App/main.swift)** – Application entry point implementing the SwiftUI `App` protocol.
- **[Sources/PalmierPro/UI/AppTheme.swift](https://github.com/palmier-io/palmier-pro/blob/main/Sources/PalmierPro/UI/AppTheme.swift)** – Design system constants and styling protocols written in Swift.
- **[Sources/PalmierPro/Editor/ViewModel/EditorViewModel.swift](https://github.com/palmier-io/palmier-pro/blob/main/Sources/PalmierPro/Editor/ViewModel/EditorViewModel.swift)** – Core editor logic utilizing Swift concurrency features.
- **[Tests/PalmierProTests/Transcription/TranscriptSearchTests.swift](https://github.com/palmier-io/palmier-pro/blob/main/Tests/PalmierProTests/Transcription/TranscriptSearchTests.swift)** – Unit tests leveraging the XCTest framework.

The following example from [`AppTheme.swift`](https://github.com/palmier-io/palmier-pro/blob/main/AppTheme.swift) illustrates typical Swift syntax for UI configuration:

```swift
// Using the design‑system constants defined in AppTheme.swift
Text("Welcome to Palmier Pro")
    .font(.system(size: AppTheme.FontSize.large))
    .foregroundColor(AppTheme.Text.primary)
    .padding(AppTheme.Spacing.medium)

```

## Testing Infrastructure

The test suite follows the same language consistency. Files such as [TranscriptSearchTests.swift](https://github.com/palmier-io/palmier-pro/blob/main/Tests/PalmierProTests/Transcription/TranscriptSearchTests.swift) utilize **XCTest** frameworks written entirely in Swift:

```swift
import XCTest
@testable import PalmierPro

final class TranscriptSearchTests: XCTestCase {
    func testSearchHighlighting() {
        let viewModel = TranscriptViewModel()
        let results = viewModel.search(for: "cut")
        XCTAssertEqual(results.count, 3)
    }
}

```

## Summary

- **Swift 6.2** is the only programming language used in the Palmier Pro source repository.
- The project contains **no Objective-C** bridging headers or `.m` implementation files.
- **[Package.swift](https://github.com/palmier-io/palmier-pro/blob/main/Package.swift)** defines the Swift toolchain and dependency graph without native C/C++ interop.
- Both application code and unit tests utilize pure Swift with **SwiftUI** for the user interface layer.

## Frequently Asked Questions

### Is Palmier Pro built with Objective-C?

No. Palmier Pro contains no Objective-C source files in its repository. While third-party dependencies like Sparkle and Sentry may internally use Objective-C, the application code in `palmier-io/palmier-pro` is 100% Swift.

### What version of Swift does Palmier Pro use?

The project targets **Swift 6.2** (Swift 6 language mode with toolchain-specific features). The [Package.swift](https://github.com/palmier-io/palmier-pro/blob/main/Package.swift) manifest configures `swiftLanguageVersion(.v6)` and the codebase utilizes modern concurrency features and SwiftUI APIs introduced in recent Swift versions.

### Does Palmier Pro contain any C or C++ code?

No. The repository excludes any `.c`, `.cpp`, `.h`, or `.mm` files. All system-level functionality, including video processing and transcription features, implements through Swift interfaces to native macOS frameworks.

### Are the unit tests also written in Swift?

Yes. All test files reside in the `Tests/` directory with `.swift` extensions, using Apple's **XCTest** framework. Files like [TranscriptSearchTests.swift](https://github.com/palmier-io/palmier-pro/blob/main/Tests/PalmierProTests/Transcription/TranscriptSearchTests.swift) demonstrate standard Swift testing patterns without Objective-C compatibility layers.