agentleFS
ArogyaReddyArogyaReddy/https-github.com-affaan-m-everything-claude-code1/.cursor/rules/swift-coding-style.md

https-github.com-affaan-m-everything-claude-code1 / rules

Cursor rule2 starsChanged 7 months agoMITView on GitHub

Swift coding style extending common rules

We split this swift-coding-style.md into the rules it gives an agent

5 rules. About 0 are common, 2 are distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Prefer let over var -- define everything as let and only change to var if the compiler requires it

    line 17
  2. Very specific:

    Use struct with value semantics by default.

    line 18
  3. Distinctive:

    Follow Apple API Design Guidelines:

    line 22
  4. Very specific:

    Use static let for constants over global constants

    line 26
  5. Distinctive:

    Use typed throws (Swift 6+) and pattern matching:

    line 30

≈ “Common” is an estimate: at least 1 in 5 of the 6,350 Cursor rule files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
swift-coding-style.md

Swift Coding Style

This file extends the common coding style rule with Swift specific content.

Formatting

  • SwiftFormat for auto-formatting, SwiftLint for style enforcement
  • swift-format is bundled with Xcode 16+ as an alternative

Immutability

  • Prefer let over var -- define everything as let and only change to var if the compiler requires it
  • Use struct with value semantics by default; use class only when identity or reference semantics are needed

Naming

Follow Apple API Design Guidelines:

  • Clarity at the point of use -- omit needless words
  • Name methods and properties for their roles, not their types
  • Use static let for constants over global constants

Error Handling

Use typed throws (Swift 6+) and pattern matching:

func load(id: String) throws(LoadError) -> Item {
    guard let data = try? read(from: path) else {
        throw .fileNotFound(id)
    }
    return try decode(data)
}

Concurrency

Enable Swift 6 strict concurrency checking. Prefer:

  • Sendable value types for data crossing isolation boundaries
  • Actors for shared mutable state
  • Structured concurrency (async let, TaskGroup) over unstructured Task {}

Download now (ZIP)

Trending

Steady: 0 new projects took it in the last 4 weeks, none the 4 weeks before.thin data

Week of Aug 30: 0 new projectsWeek of Sep 6: 0 new projectsWeek of Sep 13: 0 new projectsWeek of Sep 20: 0 new projectsWeek of Sep 27: 0 new projectsWeek of Oct 4: 0 new projectsWeek of Oct 11: 0 new projectsWeek of Oct 18: 0 new projects
Aug 2026Sep 2026Oct 2026
New projects taking a version of this file each week, over the 8 weeks our latest run read: only 0 in all, so this is a hint, not a trend.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.