Bienvenue dans le développement Swift avec Cursor ! Que tu crées des apps iOS, des applications macOS ou des projets Swift côté serveur, on a ce qu’il te faut. Ce guide t’aidera à configurer ton environnement Swift dans Cursor, en commençant par les bases avant de passer à des fonctionnalités plus avancées.

Flux de travail de base

La façon la plus simple d’utiliser Cursor avec Swift, c’est d’en faire ton éditeur de code principal tout en t’appuyant sur Xcode pour la compilation et l’exécution de tes apps. Tu profiteras de fonctionnalités au top comme :
  • Complétion de code intelligente
  • Assistance de codage par IA (essaie CMD+K sur n’importe quelle ligne)
  • Accès rapide à la doc avec @Docs
  • Coloration syntaxique
  • Navigation de code basique
Quand tu dois builder ou lancer ton app, bascule simplement sur Xcode. Ce flux de travail est parfait si tu veux tirer parti des capacités d’IA de Cursor tout en gardant tes outils Xcode habituels pour le débogage et le déploiement.

Hot Reloading

Quand tu utilises des workspaces ou des projets Xcode (au lieu d’ouvrir directement un dossier dans Xcode), Xcode peut souvent ignorer les modifications apportées à tes fichiers depuis Cursor, ou plus généralement en dehors de Xcode. Même si ouvrir le dossier dans Xcode peut régler ça, tu peux avoir besoin d’utiliser un projet pour ton flux de travail Swift. Une super solution, c’est d’utiliser Inject, une bibliothèque de hot reloading pour Swift qui permet à ton app de “hot reload” et de se mettre à jour en temps réel dès que tu fais des changements. Cette approche n’est pas sujette aux effets de bord liés aux workspaces/projets Xcode et te permet de modifier ton code dans Cursor et de voir les changements reflétés immédiatement dans ton app.

Développement Swift avancé

Cette section du guide s’inspire largement de Thomas Ricouard et de son article sur l’utilisation de Cursor pour le développement iOS. Va lire son article pour plus de détails et abonne-toi pour plus de contenu Swift.
Si tu veux n’avoir qu’un seul éditeur ouvert à la fois et éviter d’alterner entre Xcode et Cursor, tu peux utiliser une extension comme Sweetpad pour intégrer Cursor directement au système de build sous-jacent de Xcode. Sweetpad est une extension puissante qui te permet de compiler, lancer et déboguer tes projets Swift directement dans Cursor, sans rien sacrifier des fonctionnalités de Xcode. Pour démarrer avec Sweetpad, tu auras quand même besoin d’avoir Xcode installé sur ton Mac — c’est la base du développement Swift. Tu peux télécharger Xcode depuis le Mac App Store. Une fois Xcode configuré, on va améliorer ton expérience de dev dans Cursor avec quelques outils essentiels. Ouvre ton terminal et exécute :
# Compile tes projets sans avoir besoin d’ouvrir Xcode
brew install xcode-build-server

# Met en forme la sortie de la commande `xcodebuild` dans le terminal de Cursor
brew install xcbeautify

# Offre un formatage avancé et des fonctionnalités du langage
brew install swiftformat
Next, install the Swift Language Support extension in Cursor. This will give you syntax highlighting and basic language features right out of the box. Then, we can install the Sweetpad extension to integrate Cursor with Xcode. Sweetpad wraps a bunch of shortcuts around the xcodebuild CLI (and much more), and allows you to scan your targets, select the destination, build, and run your app just like Xcode. On top of that, it’ll set up your project for Xcode Build Server so you get all the features mentioned above.

Utilisation de Sweetpad

Une fois Sweetpad installé et un projet Swift ouvert dans Cursor, lance d’abord la commande Sweetpad: Generate Build Server Config. Ça va générer un fichier buildServer.json à la racine de ton projet pour permettre à Xcode Build Server de fonctionner avec ton projet. Ensuite, depuis la palette de commandes ou la barre latérale de Sweetpad, tu peux sélectionner la cible que tu veux builder et exécuter.
Tu dois builder ton projet une fois pour activer l’auto-complétion, Aller à la définition, et d’autres fonctionnalités du langage.
Tu peux aussi maintenant appuyer sur F5 pour builder et lancer ton projet avec un débogueur — tu devras peut‑être créer d’abord une configuration de lancement, mais sélectionne simplement Sweetpad dans la liste quand on te le demande ! Comme pour beaucoup d’extensions dans Cursor, tu peux associer de nombreuses commandes de Sweetpad à des raccourcis clavier pour rendre ton workflow encore plus efficace. Pour en savoir plus sur Sweetpad, jette un œil à ces ressources :