# Εφαρμογή με Claude Code: οδηγός για iPhone

> Εγκατάσταση Claude Code, project Expo, CLAUDE.md, prompts οθόνη προς οθόνη και αποστολή στο TestFlight με EAS: ο πλήρης οδηγός.

Αρχική σελίδα: [Εφαρμογή με Claude Code: οδηγός για iPhone](https://devoria.fr/el/blog/create-app-claude-code-iphone-tutorial)
Συγγραφέας: [Mehdi Azizi](https://devoria.fr/el/mehdi-azizi)
Δημοσίευση: 2026-09-23
Τελευταία αναθεώρηση περιεχομένου: 2026-10-09


## Πώς φτιάχνεις εφαρμογή με το Claude Code: η σύντομη απάντηση

Για να φτιάξεις εφαρμογή με το Claude Code, χρειάζεσαι πληρωμένη πρόσβαση στο Claude Code (συμβατή συνδρομή ή Console με χρέωση ανά χρήση), Node.js, ένα iPhone με Expo Go και ένα project Expo. Γράφεις ένα αρχείο `CLAUDE.md` που περιγράφει τη stack και τους κανόνες σου, ζητάς μία οθόνη τη φορά, δοκιμάζεις κάθε οθόνη στο iPhone σου και μετά στέλνεις την εφαρμογή στο TestFlight με το EAS.

Αυτός ο οδηγός συμπληρώνει τον οδηγό μου [πώς φτιάχνεις μια εφαρμογή iOS με AI](https://devoria.fr/el/blog/create-ios-app-with-ai-pitfalls-checks), που εξηγεί τι κάνει καλά η AI και πού αποτυγχάνει. Εδώ περνάμε στην πράξη: εντολές, αρχεία, prompts.

Γράφω τις εφαρμογές μου για iOS με το Claude Code και το Cursor κάθε μέρα. Η stack μου: React Native, Expo, EAS, RevenueCat και Supabase. Το Solys, ένα ξυπνητήρι με μίνι παιχνίδια, και το TradaZen, μια εφαρμογή εξάσκησης στο trading, είναι δημοσιευμένα στο App Store. Το Nolera και το Clic απορρίφθηκαν από την Apple και μετά διορθώθηκαν. Όλα όσα ακολουθούν βγαίνουν από αυτή τη δουλειά.

Για να δεις αυτή τη μέθοδο εφαρμοσμένη σε δημοσιευμένη εφαρμογή, έχω καταγράψει [τη διαδρομή του TradaZen, από το πρώτο commit μέχρι τις απορρίψεις της Apple και τα pivots](https://devoria.fr/el/blog/tradazen-case-study-launch-iphone-app). Αυτή η εμπειρία συμπληρώνει τα βήματα του οδηγού.

## Βήμα 1: μάζεψε τα προαπαιτούμενα

Πριν από την πρώτη εντολή, έλεγξε ότι τα έχεις όλα αυτά.

### Πληρωμένος λογαριασμός Claude

Το Claude Code δεν περιλαμβάνεται στο δωρεάν πλάνο του claude.ai. [Σύμφωνα με την τεκμηρίωση της Anthropic](https://code.claude.com/docs/en/setup), χρειάζεσαι λογαριασμό Pro, Max, Team, Enterprise ή Console. Το Pro σου αρκεί για να ξεκινήσεις, μέσα στα όρια χρήσης του.

### Node.js και τερματικό

Το Expo απαιτεί [Node.js σε έκδοση LTS](https://docs.expo.dev/get-started/create-a-project/), σε macOS, Windows ή Linux. Το Claude Code τρέχει σε macOS 13 ή νεότερο, Windows 10 ή νεότερο και στις κύριες διανομές Linux.

### Ένα iPhone και το Expo Go

Εγκατάστησε το Expo Go από το App Store στο iPhone σου για να δοκιμάσεις τις πρώτες σου οθόνες χωρίς να κάνεις build τη δική σου εφαρμογή. Πριν φτιάξεις το project, [έλεγξε ποια έκδοση SDK είναι συμβατή με την εγκατάστασή σου στη σελίδα του Expo Go](https://expo.dev/go). Το τελευταίο SDK και η έκδοση που διανέμεται στο App Store δεν είναι πάντα διαθέσιμα ταυτόχρονα: το Expo έχει καταγράψει για παράδειγμα [αυτή την καθυστέρηση τον Μάιο του 2026](https://expo.dev/changelog/expo-go-and-app-store-may-2026). Μην ξεκινάς λοιπόν από έναν αριθμό έκδοσης που βρήκες σε κάποιον παλιό οδηγό. Για να χρησιμοποιήσεις δικά σου native modules, θα χρειαστείς development build.

### Mac; Δεν είναι υποχρεωτικό

Τα builds για iOS γίνονται στους servers του Expo με το EAS Build, με την έκδοση του Xcode που επιλέγει το Expo SDK σου (ITMS-90725), και [το EAS Submit δουλεύει σε macOS, Linux και Windows](https://docs.expo.dev/submit/ios/). Μπορείς λοιπόν να φτάσεις μέχρι το TestFlight από PC. Ο οδηγός [δημοσίευση εφαρμογής iOS χωρίς Mac](https://devoria.fr/el/blog/publish-ios-app-without-mac-expo-eas) εξηγεί αναλυτικά αυτή τη διαδικασία.

### Λογαριασμός Apple Developer, αργότερα

Δεν τον χρειάζεσαι για να γράφεις κώδικα και να δοκιμάζεις στο Expo Go του App Store. Γίνεται υποχρεωτικός τη στιγμή που στέλνεις την εφαρμογή σου στο TestFlight. Θα επανέλθουμε σε αυτό στο βήμα 7.

## Βήμα 2: εγκατάστησε το Claude Code

Σε macOS, Linux ή WSL, η μέθοδος που προτείνει η Anthropic είναι ο native installer:

```bash
curl -fsSL https://claude.ai/install.sh | bash
```

Σε Windows, στο PowerShell:

```powershell
irm https://claude.ai/install.ps1 | iex
```

Μετά έλεγξε ότι η εγκατάσταση πέτυχε:

```bash
claude --version
```

Αν προτιμάς npm, η εντολή είναι `npm install -g @anthropic-ai/claude-code`. Μη βάλεις `sudo` μπροστά, η τεκμηρίωση το αποθαρρύνει ρητά.

Την πρώτη φορά που τρέχεις `claude`, ανοίγει ένας browser για να συνδεθείς στον λογαριασμό σου. Μετά γράφεις στα ελληνικά: το Claude διαβάζει τα αρχεία σου, προτείνει αλλαγές και τρέχει εντολές, με τη συγκατάθεσή σου.

## Βήμα 3: φτιάξε το project Expo

Πήγαινε στον φάκελο όπου κρατάς τα projects σου και τρέξε:

```bash
npx create-expo-app@latest mon-app
cd mon-app
npx expo start
```

Αν το εργαλείο σού δώσει επιλογή ανάμεσα στη συμβατότητα με το Expo Go του App Store και στο τελευταίο SDK, διάλεξε τη συμβατότητα για αυτή την άσκηση. Σε κάθε περίπτωση, έλεγξε ότι η έκδοση που δημιουργήθηκε υποστηρίζεται από το Expo Go που έχεις στο iPhone σου πριν συνεχίσεις. Θα μπορείς να ετοιμάσεις development build όταν το project σου το χρειαστεί.

Στο τερματικό εμφανίζεται ένα QR code. Σκάναρέ το με την κάμερα του iPhone σου: η εφαρμογή ανοίγει στο Expo Go. Μια λεπτομέρεια σε κολλάει συχνά την πρώτη φορά: [το Expo Go ανοίγει το project σου μόνο αν το Expo CLI και το Expo Go είναι συνδεδεμένα στον ίδιο λογαριασμό Expo](https://docs.expo.dev/get-started/start-developing/). Τρέξε `npx expo login` στον υπολογιστή σου και συνδέσου με τον ίδιο λογαριασμό στην εφαρμογή.

Γιατί Expo και όχι Swift; Το Claude ξέρει πολύ καλά το React Native και δοκιμάζεις χωρίς Mac. Εξηγώ αυτή την επιλογή στη σελίδα [React Native και Expo για mobile εφαρμογή](https://devoria.fr/el/expertise/react-native-expo-mobile-app).

Κράτα στο μυαλό σου έναν περιορισμό του Expo Go: περιέχει μόνο τα native modules που έχει ήδη ενσωματωμένα. Μόλις προσθέσεις μια native βιβλιοθήκη που δεν γνωρίζει, για παράδειγμα τις αγορές εντός εφαρμογής, θα χρειαστείς development build. Για τις πρώτες οθόνες δεν είναι πρόβλημα.

### Διάλεξε το σωστό περιβάλλον δοκιμών

Το Expo Go, ένα development build και το TestFlight δεν αποδεικνύουν το ίδιο πράγμα. [Το Expo περιγράφει το development build](https://docs.expo.dev/develop/development-builds/introduction/) ως τη δική σου εφαρμογή δοκιμών, με τα native modules που χρειάζεται το project σου.

| Τι θέλεις να ελέγξεις                                         | Πού να το δοκιμάσεις                                        | Τι δεν καλύπτει η δοκιμή                                        |
| ------------------------------------------------------------- | ----------------------------------------------------------- | --------------------------------------------------------------- |
| Να εμφανίσεις μια πρώτη οθόνη και να δοκιμάσεις την πλοήγηση  | Expo Go, με συμβατό SDK                                     | Τη συμπεριφορά native modules που λείπουν από το Expo Go        |
| Να χρησιμοποιήσεις μια native βιβλιοθήκη που πρόσθεσες        | Development build που περιλαμβάνει αυτή τη βιβλιοθήκη       | Την έκδοση που θα διανεμηθεί ούτε την αποδοχή της από την Apple |
| Να περάσεις την εφαρμογή των testers και να δοκιμάσεις αγορές | Build σταλμένο στο TestFlight και σωστά ρυθμισμένα προϊόντα | Μια πραγματική πληρωμή πελάτη ή την έγκριση για κυκλοφορία      |

Πριν προσθέσεις μια εξάρτηση, ρώτα το Claude: «Είναι συμβατή με το SDK μου και το τωρινό περιβάλλον δοκιμών μου; Χρειάζεται νέο build της εφαρμογής; Στήριξε την απάντησή σου στην τεκμηρίωση.» Έτσι γλιτώνεις ένα βράδυ προσπαθώντας να διορθώσεις ένα module που το Expo Go απλώς δεν μπορεί να φορτώσει, ή ένα SDK που απορρίπτεται στην αποστολή για μη δημόσιο API.

## Βήμα 4: γράψε το αρχείο CLAUDE.md του project

Αυτό είναι το βήμα που αποδίδει περισσότερο. Το Claude Code μπορεί να κρατά μνήμη του project, αλλά πρέπει να του δώσεις ρητά τους κανόνες. Το αρχείο `CLAUDE.md`, στη ρίζα του project, δίνει οδηγίες κοινές σε όλα τα sessions. Εκεί γράφεις ό,τι το Claude δεν μπορεί να μαντέψει.

Στον φάκελο του project, τρέξε `claude` και μετά γράψε `/init`. [Σύμφωνα με την τεκμηρίωση](https://code.claude.com/docs/en/memory), το Claude αναλύει το project και δημιουργεί ένα πρώτο `CLAUDE.md` με τις εντολές και τις συμβάσεις που βρίσκει. Μετά το συμπληρώνεις με τους κανόνες σου. Η Anthropic προτείνει να μείνεις κάτω από 200 γραμμές: όσο μεγαλύτερο το αρχείο, τόσο λιγότερο τηρούνται οι οδηγίες.

Ορίστε ένα σύντομο παράδειγμα, κοντά σε αυτό που χρησιμοποιώ:

```markdown
# Η εφαρμογή μου

## Stack

- Expo (SDK του create-expo-app), React Native, TypeScript strict
- Πλοήγηση: Expo Router, ένα αρχείο ανά οθόνη στο app/
- Δεδομένα: Supabase (αργότερα), ποτέ μυστικό κλειδί μέσα στην εφαρμογή

## Κανόνες

- Μία οθόνη τη φορά. Μην αγγίζεις αρχεία εκτός του αιτήματος.
- Κανένα σταθερό ύψος σε points: μεγέθη σχετικά με την οθόνη,
  ScrollView αν το περιεχόμενο μπορεί να ξεπεράσει.
- Κάθε οθόνη χειρίζεται 3 καταστάσεις: φόρτωση, κενό, σφάλμα.
- Κείμενα διεπαφής στα ελληνικά με τόνους.
- Πριν γράψεις κώδικα σε περισσότερα από 2 αρχεία: πρότεινε πλάνο και περίμενε την έγκρισή μου.

## Εντολές

- Εκκίνηση: npx expo start
- Tests: χρησιμοποίησε το script που υπάρχει πραγματικά στο package.json.
  Αν δεν υπάρχει ακόμα, ανέφερέ το· μην ανακοινώνεις tests που πέρασαν.
- Types: npx tsc --noEmit
- Μετά από κάθε αλλαγή: τρέξε tests και types, και πες μου
  τι άλλαξε και πώς να το ελέγξω στο iPhone.
```

Ο κανόνας για τα σταθερά ύψη δεν είναι εκεί τυχαία. Θα επανέλθουμε σε αυτό στο βήμα 6.

## Βήμα 5: γράφε prompts για μία οθόνη τη φορά

Το «Φτιάξε μου μια εφαρμογή παρακολούθησης συνηθειών με συνδρομή» βγάζει ένα τεράστιο, εύθραυστο project που δεν μπορείς να ελέγξεις. Η μέθοδος που δουλεύει είναι η αντίθετη: ένα αίτημα, μία οθόνη, ένα αποτέλεσμα που μπορείς να δοκιμάσεις σε πέντε λεπτά.

### Ξεκίνα με πλάνο

Για ό,τι αγγίζει πολλά αρχεία, πέρνα σε plan mode. Πάτα `Shift+Tab` μέχρι να δεις `plan mode on` στη γραμμή κατάστασης. [Σε αυτή τη λειτουργία](https://code.claude.com/docs/en/common-workflows), το Claude διαβάζει τα αρχεία και προτείνει πλάνο, αλλά δεν αλλάζει τίποτα πριν την έγκρισή σου. Το διαβάζεις, το διορθώνεις και μετά το εγκρίνεις.

Ένα πρώτο prompt για να ορίσεις το πλαίσιο μοιάζει κάπως έτσι:

```text
Θέλω μια εφαρμογή παρακολούθησης συνηθειών. Έκδοση 1: μία μόνο λειτουργία,
να τσεκάρω τις συνήθειες της ημέρας. Πρότεινε τη λίστα οθονών και τη
δομή φακέλων. Μη γράψεις κώδικα προς το παρόν.
```

### Περίγραψε την οθόνη, τις καταστάσεις και τα όριά της

Μετά, ένα prompt ανά οθόνη. Όσο περισσότερες οριακές περιπτώσεις ονομάζεις, τόσο λιγότερο τις ξεχνά το Claude:

```text
Φτιάξε την οθόνη app/index.tsx που δείχνει τις συνήθειες της ημέρας.
- Κάθε γραμμή: όνομα συνήθειας, checkbox, τρέχον σερί.
- Κενή κατάσταση: ένα κείμενο και ένα κουμπί «Προσθήκη συνήθειας».
- Κατάσταση φόρτωσης και κατάσταση σφάλματος με κουμπί «Δοκίμασε ξανά».
- Τα δεδομένα έρχονται από έναν τοπικό πίνακα προς το παρόν.
- Πρέπει να χωράει σε iPhone SE όπως και στο μεγαλύτερο iPhone:
  κανένα σταθερό ύψος, η λίστα κάνει scroll.
Τρέξε tests και types στο τέλος.
```

### Διόρθωσε χωρίς να τα ξαναγράψει όλα

Όταν κάποια λεπτομέρεια δεν είναι σωστή, μείνε συγκεκριμένος και περιόρισε το εύρος:

```text
Στο iPhone μου, το κουμπί «Προσθήκη συνήθειας» πάει κάτω από την κάτω
μπάρα όταν η λίστα είναι μεγάλη. Διόρθωσε μόνο αυτό το πρόβλημα στο
app/index.tsx, χωρίς να αγγίξεις άλλα αρχεία. Εξήγησε την αιτία.
```

Μπορείς επίσης να επικολλήσεις ένα screenshot στο τερματικό: το Claude το διαβάζει.

## Άσκηση: μια συνήθεια που μένει τσεκαρισμένη μετά την επανεκκίνηση

Αυτή είναι μια εκπαιδευτική άσκηση για να την κάνεις στο project σου, όχι στιγμιότυπο μιας λειτουργίας που έχει ήδη κυκλοφορήσει. Ο στόχος είναι να περάσεις από μια παραγόμενη οθόνη σε μια συμπεριφορά που μπορείς να επαληθεύσεις. Δεν χρειάζεται ούτε λογαριασμό χρήστη ούτε αγορά εντός εφαρμογής.

1. Κράτα μία μόνο τοπική συνήθεια με όνομα «Διάβασμα 10 λεπτά».
2. Ζήτα ένα checkbox και τοπική αποθήκευση συμβατή με το project Expo σου.
3. Ζήτα από τον agent να αναφέρει τα αρχεία που άλλαξαν, την εξάρτηση αν υπάρχει και τις εντολές που έτρεξε πραγματικά.
4. Εγκατάστησε ή άνοιξε την εφαρμογή σου στο iPhone και κάνε τους ελέγχους παρακάτω.

```text
Με βάση την υπάρχουσα οθόνη, κάνε τη συνήθεια «Διάβασμα 10 λεπτά»
να τσεκάρεται και κράτα την κατάστασή της μετά το κλείσιμο και το
ξανάνοιγμα της εφαρμογής. Χρησιμοποίησε τοπική αποθήκευση συμβατή με τις
εξαρτήσεις του project. Μη φτιάξεις λογαριασμό, server, συνδρομή ή επιπλέον στατιστικά.
Πριν γράψεις κώδικα, εξήγησε πώς θα χειριστείς τη φόρτωση και μια αποτυχία
ανάγνωσης ή αποθήκευσης. Μετά, κάνε μια περιορισμένη αλλαγή.
Στο τέλος: αρχεία που άλλαξαν, εντολές που έτρεξαν, όρια που δεν δοκιμάστηκαν
και ακριβή βήματα για να ελέγξω το αποτέλεσμα στο iPhone.
```

| Ενέργεια στο iPhone σου                    | Αναμενόμενο αποτέλεσμα                             | Αν αποτύχει                                                  |
| ------------------------------------------ | -------------------------------------------------- | ------------------------------------------------------------ |
| Άνοιξε την εφαρμογή για πρώτη φορά         | Η συνήθεια και το checkbox φαίνονται, χωρίς σφάλμα | Έλεγξε την αρχική κατάσταση και τη φόρτωση της αποθήκευσης   |
| Τσέκαρε, κλείσε και ξανάνοιξε την εφαρμογή | Η συνήθεια μένει τσεκαρισμένη                      | Έλεγξε την εγγραφή και μετά την ανάγνωση του ίδιου κλειδιού  |
| Ξετσέκαρε και κάνε επανεκκίνηση            | Η συνήθεια μένει ατσέκαριστη                       | Έλεγξε ότι αποθηκεύεται και η τιμή `false`                   |
| Ξανακάνε τη διαδρομή σε λειτουργία πτήσης  | Η τοπική λειτουργία μένει διαθέσιμη                | Εντόπισε μια εξάρτηση δικτύου που προστέθηκε χωρίς λόγο      |
| Μεγάλωσε το μέγεθος κειμένου               | Το όνομα και το checkbox μένουν προσβάσιμα         | Αφαίρεσε τους περιορισμούς που κόβουν ή κρύβουν την ενέργεια |

Μη ζητάς «ξαναγράψ' τα όλα» αν αποτύχει μία γραμμή. Περίγραψε την ενέργεια, το αναμενόμενο αποτέλεσμα και αυτό που παρατήρησες. Για παράδειγμα: «Μετά την επανεκκίνηση, το checkbox αδειάζει ξανά ενώ το είχα τσεκάρει. Εξήγησε την αιτία και διόρθωσε την αποθήκευση χωρίς να αλλάξεις το design.»

[Κατέβασε το πρότυπο CLAUDE.md και το φύλλο ελέγχου (.md)](https://devoria.fr/ressources/claude-md-premiere-app-ios.md). Άνοιξέ το στον editor σου ή σε μια εφαρμογή σημειώσεων. Προσάρμοσε τις εντολές στο project σου πριν το δώσεις στον agent.

## Βήμα 6: βάλε έλεγχο και δοκιμές

Το Claude Code γράφει κώδικα που φαίνεται σωστός. Μόνο τα tests σου και το iPhone σου σου λένε αν είναι.

### Tests για να μη σπάσει ό,τι δουλεύει

Όσο μεγαλώνει η εφαρμογή σου, τόσο κάθε αίτημα κινδυνεύει να σπάσει μια οθόνη που είχες ήδη εγκρίνει. Το project που φτιάχνει το Expo δεν έχει tests: ζήτα πρώτα από το Claude να εγκαταστήσει το Jest με το `jest-expo`, όπως προτείνει η τεκμηρίωση του Expo. Μετά ζήτα tests για τη σημαντική λογική (υπολογισμός σεριού, επικύρωση φόρμας) και βάλ' τα να τρέχουν μετά από κάθε αλλαγή. Γι' αυτό οι εντολές των tests είναι γραμμένες στο `CLAUDE.md`: το Claude τις τρέχει χωρίς να χρειάζεται να του το θυμίζεις. Με ένα αρχείο κανόνων και tests, η AI σπάει πολύ λιγότερο ό,τι ήδη δούλευε.

### Έλεγξε κάθε αλλαγή

Δεν χρειάζεται να καταλαβαίνεις κάθε γραμμή. Πρέπει να ξέρεις ποια αρχεία άλλαξαν και γιατί. Αν το Claude άγγιξε ένα άσχετο αρχείο, ρώτα τον λόγο πριν το αποδεχτείς. Μετά κάνε την ερώτηση: «τι μπορεί να σπάσει εδώ;».

### Έλεγξε σε μικρό και σε μεγάλο iPhone

Αυτό είναι το μάθημα που μου κόστισε περισσότερο. Το Solys απορρίφθηκε από την Apple βάσει του κανόνα 2.1: το demo του onboarding ήταν αδύνατο να κερδηθεί σε iPad Air, όπου η εφαρμογή έτρεχε σε λειτουργία συμβατότητας iPhone. Η αιτία: ύψη γραμμένα σε σταθερά points, όχι σχετικά με το μέγεθος της οθόνης. Στο iPhone μου όλα ήταν μια χαρά. Ο κώδικας είχε ελεγχθεί, τα tests ήταν πράσινα. Κανένα εργαλείο δεν είχε κοιτάξει την οθόνη σε άλλο μέγεθος.

Από τότε, ελέγχω κάθε οθόνη τουλάχιστον στο μικρότερο και στο μεγαλύτερο iPhone. Αν έχεις μόνο ένα κινητό, ο simulator του Xcode σε Mac ή ένας φίλος με άλλο μοντέλο θα κάνουν τη δουλειά. Κοίτα ειδικά τα μεγάλα κείμενα, το πληκτρολόγιο ανοιχτό στις φόρμες και τα κουμπιά που είναι καρφωμένα κάτω.

## Τι κάνει άσχημα το Claude Code

Το Claude Code διαπρέπει στις οθόνες και στη λογική. Έξω από τον φάκελό σου, είναι πολύ λιγότερο αξιόπιστο.

### Υπογραφή και πιστοποιητικά

Χωρίς εξουσιοδοτημένη σύνδεση στον λογαριασμό σου Apple, το Claude δεν ξέρει την κατάστασή του. Μπορεί να επινοήσει μια διαδικασία πιστοποιητικών που ανακατεύει Xcode και Expo. Άφησε το EAS να διαχειριστεί την υπογραφή: [η τεκμηρίωση του Expo](https://docs.expo.dev/build/setup/) εξηγεί ότι το EAS CLI μπορεί να δημιουργήσει και να αποθηκεύσει αυτά τα αρχεία για σένα, αφού συνδεθείς στον λογαριασμό σου Apple Developer.

### App Store Connect

Η σελίδα της εφαρμογής, οι δηλώσεις απορρήτου, τα [screenshots](https://devoria.fr/el/kits/captures-app-store) και οι νομικοί σύνδεσμοι είναι δεδομένα που πρέπει να ελέγξεις στο App Store Connect. Το Claude Code μπορεί πλέον να δουλεύει σε συνδεδεμένο browser μέσω [της ενσωμάτωσής του με το Chrome](https://code.claude.com/docs/en/chrome), με τις απαραίτητες προσβάσεις. Αυτό δεν εγγυάται ότι τα πεδία είναι σωστά: ξαναδιάβασε τις πληροφορίες, έλεγξε ποιους λογαριασμούς χρησιμοποιεί και επιβεβαίωσε εσύ τις δεσμεύσεις και την υποβολή για review.

### Συνδρομές

Το να γράψεις ένα paywall παίρνει δέκα λεπτά. Το να ταιριάξουν τα προϊόντα του App Store Connect, η ρύθμισή τους στο RevenueCat και ο κώδικας, είναι άλλη ιστορία. Ένα αναγνωριστικό που διαφέρει κατά έναν χαρακτήρα και το paywall μένει άδειο στον reviewer. Οι πιο συχνές παγίδες είναι στη λίστα [τα λάθη των αρχαρίων στο paywall iOS](https://devoria.fr/el/blog/paywall-ios-7-lathi-poliseis).

### Οριακές περιπτώσεις

Χωρίς οδηγίες, το Claude χειρίζεται μόνο το κανονικό σενάριο. Χωρίς δίκτυο, κενή λίστα, διακοπτόμενη αγορά: εσύ πρέπει να τα ονομάσεις.

### Ασφάλεια στο Supabase

Όταν το Claude φτιάχνει πίνακες στο Supabase, έλεγξε ότι η ασφάλεια σε επίπεδο γραμμής (RLS) είναι ενεργή, με πολιτικές που περιορίζουν κάθε χρήστη στα δικά του δεδομένα. Έλεγξε επίσης ότι κανένα μυστικό κλειδί δεν καταλήγει στον κώδικα της εφαρμογής. Γράψε αυτές τις δύο απαγορεύσεις στο `CLAUDE.md` σου μόλις συνδέσεις βάση.

## Βήμα 7: πέρνα στο TestFlight με το EAS

Οι οθόνες σου έχουν ελεγχθεί στο Expo Go ή σε development build, ανάλογα με τα modules που χρησιμοποιείς. Πέρνα τώρα στο build που θα διανεμηθεί στους testers.

### Ετοίμασε το EAS

Τώρα χρειάζεσαι [πληρωμένο λογαριασμό Apple Developer](https://devoria.fr/el/blog/apple-developer-account-price-free-or-99): [όπως θυμίζει το Expo](https://docs.expo.dev/submit/ios/), είναι υποχρεωτικός για να στείλεις εφαρμογή στο App Store. Μετά, εγκατάστησε το εργαλείο του Expo και ρύθμισε το project:

```bash
npm install --global eas-cli
eas login
eas build:configure
```

Πρόσθεσε ένα μοναδικό bundle identifier στο `app.json`, κάτω από `ios.bundleIdentifier`, για παράδειγμα `com.tonnom.monapp`.

### Κάνε build και στείλε

```bash
eas build --platform ios --profile production
eas submit --platform ios
```

Η πρώτη εντολή κάνει build την εφαρμογή στους servers του Expo. Την πρώτη φορά, το EAS σού προτείνει να συνδεθεί στον λογαριασμό σου Apple για να δημιουργήσει τα πιστοποιητικά. Η δεύτερη στέλνει το build στο App Store Connect. Μπορείς επίσης να τα κάνεις όλα μαζί με `eas build --platform ios --auto-submit`.

Το build πρέπει να επεξεργαστεί από την Apple πριν εμφανιστεί στο TestFlight, και αυτή η επεξεργασία μπορεί να το απορρίψει, για παράδειγμα με ITMS-90717 για διάφανο εικονίδιο. Μια επιτυχημένη αποστολή λοιπόν δεν σημαίνει ότι μπορεί ήδη να εγκατασταθεί: έλεγξε την κατάστασή του στο App Store Connect. Οι internal και external testers και το beta review εξηγούνται στον οδηγό μου [TestFlight για να δοκιμάσεις την εφαρμογή iPhone σου](https://devoria.fr/el/blog/testflight-dokimi-efarmogis-iphone).

Ξανακάνε τους ελέγχους του βήματος 6 σε αυτό το build. Μια εφαρμογή που δουλεύει στο Expo Go μπορεί ακόμα να κρασάρει σε production, για παράδειγμα όταν λείπει ένα native module.

## Πόσο κοστίζει πραγματικά

Αυτές είναι οι τιμές που δείχνουν οι υπηρεσίες, ελεγμένες στις 27 Σεπτεμβρίου 2026, σε δολάρια. Το ποσό που χρεώνεσαι εξαρτάται επίσης από την περιοχή σου, τους φόρους και τη χρήση σου: έλεγξε το πλάνο πριν εγγραφείς.

- **Συνδρομή Claude**: [το Pro κοστίζει 20 $ τον μήνα](https://claude.com/pricing), ή 17 $ τον μήνα με ετήσια πληρωμή. Τα πλάνα Max ξεκινούν από 100 $ τον μήνα, για περισσότερη χρήση.
- **Λογαριασμός Apple Developer**: [99 $ τον χρόνο](https://developer.apple.com/programs/), υποχρεωτικός για TestFlight και App Store.
- **EAS**: [το δωρεάν πλάνο του Expo](https://expo.dev/pricing) περιλαμβάνει 15 builds iOS τον μήνα, σε ουρά χαμηλής προτεραιότητας. Το πλάνο Starter κοστίζει 19 $ τον μήνα, συν την επιπλέον χρήση.

Για ένα μικρό πρωτότυπο, το Pro και το δωρεάν πλάνο του EAS μπορούν να αποτελέσουν μια βάση, αν μείνεις μέσα στα όριά τους. Πρόσθεσε τον λογαριασμό Apple πριν το TestFlight και μετά κοστολόγησε χωριστά τις υπηρεσίες που χρειάζεσαι πραγματικά: βάση δεδομένων, αποθήκευση ή πληρωμένο API. Το [πρότυπο προϋπολογισμού για πρώτη εφαρμογή](https://devoria.fr/ressources/budget-premiere-app-ios.csv) σε βοηθά να βάλεις κάτω αυτά τα κονδύλια. Τον χρόνο σου για ρυθμίσεις και ελέγχους πρέπει επίσης να τον υπολογίσεις.

## Τα ειλικρινή όρια, και πού κολλάει κανείς

Το Claude Code άλλαξε το ποιος μπορεί να φτιάξει εφαρμογή για iPhone. Δεν άλλαξε όσα απαιτεί η Apple για να τη δημοσιεύσεις. Μια απόρριψη έρχεται γρήγορα: το Solys έφαγε απορρίψεις, το ίδιο και το Nolera και το Clic. Οι πιο συχνοί λόγοι περιγράφονται στο [γιατί η Apple απορρίπτει μια εφαρμογή](https://devoria.fr/el/blog/aporripsi-app-apple-app-store-aities).

Μπορείς να φτάσεις μόνος σου μέχρι το TestFlight με αυτόν τον οδηγό. Εκεί που κολλάει κανείς πιο συχνά είναι μετά: σύνδεση των συνδρομών, προετοιμασία του φακέλου για τον reviewer, κατανόηση μιας απόρριψης. Για τη συνολική εικόνα της διαδρομής, διάβασε τη σελίδα [φτιάξε εφαρμογή για iPhone](https://devoria.fr/el/expertise/create-an-iphone-app).

Για αυτό το κομμάτι, το [iOS Kit](https://devoria.fr/el/kits/ios) συγκεντρώνει τον αρχικό κώδικα των εφαρμογών μου, μαζί με τις συνδρομές, τα skills του Claude Code για κάθε βήμα και το [Apple Review Kit](https://devoria.fr/el/kits/review-apple). Η πλήρης διαδρομή είναι στη σελίδα [εκπαίδευση στο Claude Code για εφαρμογή iOS](https://devoria.fr/el/expertise/claude-code-course-ios-app).

Έχεις ήδη κολλήσει και δεν ξέρεις σε τι; Η [δωρεάν διάγνωση](https://devoria.fr/el/diagnostic) σου λέει τι σε φρενάρει πραγματικά και σου στέλνει τη checklist μου κατά των απορρίψεων της Apple.

## Συχνές ερωτήσεις

### Μπορώ να φτιάξω εφαρμογή iPhone με το Claude Code χωρίς να ξέρω προγραμματισμό;

Ναι για τις οθόνες και την απλή λογική, αν ελέγχεις και δοκιμάζεις κάθε βήμα. Όχι αν ελπίζεις να μην καταλαβαίνεις τίποτα απολύτως. Πρέπει να ξέρεις να διαβάζεις ένα μήνυμα σφάλματος, να τρέχεις μια εντολή και να ελέγχεις τι άλλαξε το Claude. Αυτά μαθαίνονται γρήγορα όσο φτιάχνεις.

### Είναι δωρεάν το Claude Code;

Όχι. Το Claude Code απαιτεί λογαριασμό Pro, Max, Team, Enterprise ή Console. Το δωρεάν πλάνο του claude.ai δεν το περιλαμβάνει. Το Pro σου αρκεί για να ξεκινήσεις, με όρια χρήσης που πρέπει να προσέχεις.

### Χρειάζομαι Mac για να φτιάξω εφαρμογή iOS με το Claude Code;

Όχι. Γράφεις κώδικα σε οποιονδήποτε υπολογιστή, δοκιμάζεις στο Expo Go στο iPhone σου, και το EAS κάνει build και στέλνει την εφαρμογή από τους servers του Expo. Ένα Mac βολεύει για τον simulator, αλλά δεν είναι υποχρεωτικό.

### Claude Code ή Cursor για εφαρμογή React Native;

Χρησιμοποιώ και τα δύο, κάθε μέρα. Το Claude Code δουλεύει στο τερματικό και κάνει μόνο του αλλαγή και tests τη μία μετά την άλλη. Το Cursor είναι editor. Η μέθοδος μετράει περισσότερο από το εργαλείο: κανόνες, μία οθόνη τη φορά, tests.

### Πόσο χρόνο θέλει να δημοσιεύσεις μια πρώτη εφαρμογή με το Claude Code;

Εξαρτάται από το μέγεθος της εφαρμογής και τον χρόνο σου. Μια εφαρμογή με μία μόνο λειτουργία πάει πολύ πιο γρήγορα. Το πιο απρόβλεπτο κομμάτι παραμένει το review της Apple.

### Μπορεί το Claude Code να ρυθμίσει τις συνδρομές εντός εφαρμογής;

Μπορεί να γράψει τον κώδικα του paywall και του RevenueCat. Με συνδεδεμένα εργαλεία και τις απαραίτητες άδειες, μπορεί επίσης να δουλέψει μέσα στις κονσόλες. Μη συμπεράνεις ποτέ από την ύπαρξη του κώδικα ότι τα προϊόντα είναι ρυθμισμένα: έλεγξε τα αναγνωριστικά, τις τιμές και τα δικαιώματα μετά την αγορά, και μετά δοκίμασε την αγορά και την επαναφορά στο TestFlight. Τα [συχνά λάθη στα paywalls iOS](https://devoria.fr/el/blog/paywall-ios-7-lathi-poliseis) σου δίνουν τα σημεία που πρέπει να ελέγξεις.


## Το project σου

[iOS Kit](https://devoria.fr/el/kits/ios): Φτιάξε την app σου για iPhone με το Claude Code: ο κώδικας εκκίνησης των apps μου, τα skills που ελέγχουν τη δουλειά του, και τα Apple Review Kit, App Store Screenshots Kit και ASO Kit. 129,99 €.
