@ -2,27 +2,27 @@
## Επισκόπηση Έργου
## Επισκόπηση Έργου
Αυτό είναι ένα αποθετήριο εκπαιδευτικού προγράμματος γ ι α τη διδασκαλία των βασικών της ανάπτυξης ιστοσελίδων σε αρχάριους. Τ ο πρόγραμμα αποτελείται από ένα ολοκληρωμένο μάθημα 12 εβδομάδων που έχει αναπτυχθεί από τους Microsoft Cloud Advocates, με 24 πρακτικά μαθήματα που καλύπτουν JavaScript, CSS και HTML.
Αυτό είναι ένα εκπαιδευτικό αποθετήριο προγράμματος σπουδών γ ι α τη διδασκαλία των βασικών της ανάπτυξης ιστοσελίδων σε αρχάριους. Τ ο πρόγραμμα σπουδών είναι ένα ολοκληρωμένο μάθημα 12 εβδομάδων που αναπτύχθηκε από τους Microsoft Cloud Advocates, με 24 πρακτικά μαθήματα που καλύπτουν JavaScript, CSS και HTML.
### Κύρια Στοιχεία
### Κύρια Στοιχεία
- ** Εκπαιδευτικό Περιεχόμενο**: 24 δομημένα μαθήματα οργανωμένα σε μονάδες με έμφαση σε έργα
- ** Εκπαιδευτικό Περιεχόμενο**: 24 δομημένα μαθήματα οργανωμένα σε μονάδες βασισμένες σε έργα
- ** Πρακτικά Έργα**: Terrarium, Παιχνίδι Πληκτρολόγησης, Επέκταση Περιηγητή, Παιχνίδι Διαστήματος, Εφαρμογή Τράπεζας, Επεξεργαστής Κώδικα και Βοηθός Συνομιλίας AI
- ** Πρακτικά Έργα**: Terrarium, Παιχνίδι Πληκτρολόγησης, Επέκταση Περιηγητή, Παιχνίδι Διαστήματος, Τραπεζική Εφαρμογή, Κώδικας Επεξεργαστή και Βοηθός Συνομιλίας με Τεχνητή Νοημοσύνη
- ** Διαδραστικά Κουίζ**: 48 κουίζ με 3 ερωτήσεις το καθένα (εκτιμ ήσεις πριν/μετά το μάθημα)
- ** Διαδραστικά Κουίζ**: 48 κουίζ με 3 ερωτήσεις το καθένα (αξιολογ ήσεις πριν/μετά το μάθημα)
- ** Υποστήριξη Πολλών Γλωσσών**: Αυτόματες μεταφράσεις γ ι α πάνω από 50 γλώσσες μέσω GitHub Actions
- ** Υποστήριξη Πολλαπλ ών Γλωσσών**: Αυτόματες μεταφράσεις γ ι α πάνω από 50 γλώσσες μέσω GitHub Actions
- ** Τεχνολογίες**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (γ ι α έργα AI )
- ** Τεχνολογίες**: HTML, CSS, JavaScript, Vue.js 3, Vite, Node.js, Express, Python (γ ι α έργα Τ Ν )
### Αρχιτεκτονική
### Αρχιτεκτονική
- Εκπαιδευτικό αποθετήριο με δομή βασισμένη στα μαθήματα
- Εκπαιδευτικό αποθετήριο με δομή βάσει μαθημάτων
- Κάθε φάκελος μαθήματος περιέχει README, παραδείγματα κώδικα και λύσεις
- Οφάκελοι κάθε μαθήματος περιέχουν README, παραδείγματα κώδικα και λύσεις
- Αυτόνομα έργα σε ξεχωριστούς φακέλους (quiz-app, διάφορα έργα μαθημάτων)
- Αυτόνομα έργα σε ξεχωριστούς φακέλους (quiz-app, διάφορα έργα μαθημάτων)
- Σύστημα μετάφρασης με χρήση GitHub Actions (co-op-translator)
- Σύστημα μετάφρασης μέσω GitHub Actions (co-op-translator)
- Τεκμηρίωση διαθέσιμη μέσω Docsify και ως PDF
- Τεκμηρίωση διατίθεται μέσω Docsify και ως PDF
## Εντολές Ρύθμισης
## Εντολές Ρύθμισης
Αυτό το αποθετήριο είναι κυρίως γ ι α την κατανάλωση εκπαιδευτικού περιεχομένου. Για εργασία με συγκεκριμένα έργα:
Αυτό το αποθετήριο προορίζεται κυρίως γ ι α κατανάλωση εκπαιδευτικού περιεχομένου. Για εργασία με συγκεκριμένα έργα:
### Ρύθμιση Κύριου Αποθετηρίου
### Ρύθμιση Κύριου Αποθετηρίου
@ -36,12 +36,12 @@ cd Web-Dev-For-Beginners
```bash
```bash
cd quiz-app
cd quiz-app
npm install
npm install
npm run dev # Ξεκινήστε το διακομιστή ανάπτυξης
npm run dev # Εκκίνηση διακομιστή ανάπτυξης
npm run build # Δημιουργία γ ι α παραγωγή
npm run build # Δημιουργία γ ι α παραγωγή
npm run lint # Εκτέλεση ESLint
npm run lint # Εκτέλεση ESLint
```
```
### API Έργου Τράπεζας (Node.js + Express)
### API Τραπεζικού Έργου (Node.js + Express)
```bash
```bash
cd 7-bank-project/api
cd 7-bank-project/api
@ -56,7 +56,7 @@ npm run format # Μορφοποίηση με Prettier
```bash
```bash
cd 5-browser-extension/solution
cd 5-browser-extension/solution
npm install
npm install
# Ακολουθήστε τις οδηγίες φόρτωσης επεκτάσεων ειδικές γ ι α τον περιηγητή
# Ακολουθήστε τις οδηγίες φόρτωσης επεκτάσεων που είναι ειδικές γ ι α τον περιηγητή
```
```
### Έργα Παιχνιδιού Διαστήματος
### Έργα Παιχνιδιού Διαστήματος
@ -67,41 +67,41 @@ npm install
# Ανοίξτε το index.html σε πρόγραμμα περιήγησης ή χρησιμοποιήστε Live Server
# Ανοίξτε το index.html σε πρόγραμμα περιήγησης ή χρησιμοποιήστε Live Server
```
```
### Έργο Συνομιλίας (Python Backend)
### Έργο Συνομιλίας (Backend Python )
```bash
```bash
cd 9-chat-project/solution/backend/python
cd 9-chat-project/solution/backend/python
pip install openai
pip install openai
# Ο ρ ίστε τη μεταβλητή περιβάλλοντος GITHUB_TOKEN
# Ο ρ ισμός μεταβλητής περιβάλλοντος GITHUB_TOKEN
python api.py
python api.py
```
```
## Ροή Ανάπτυξης
## Ροή Ανάπτυξης
### Για Συνεργά τες Περιεχομένου
### Για Συνεισφέρον τες Περιεχομένου
1. ** Διακλάδωση (Fork)** του αποθετηρίου στο GitHub σας
1. ** Δημιουργήστε fork** του αποθετηρίου στον λογαριασμό σας στο GitHub
2. ** Κλωνοποίηση (Clone)** του fork τοπικά
2. ** Κλωνοποιήστε το fork** τοπικά
3. ** Δημιουργία νέου κλάδου ** γ ι α τις αλλαγές σας
3. ** Δημιουργήστε νέο κλαδί ** γ ι α τις αλλαγές σας
4. Κάντε αλλαγές στο περιεχόμενο μαθημάτων ή σ τα παραδείγματα κώδικα
4. Κάντε αλλαγές στο περιεχόμενο των μαθημάτων ή τα παραδείγματα κώδικα
5. Δοκιμάστε τις αλλαγές κώδικα στους σχετικού ς φακέλους έργων
5. Δοκιμάστε τις αλλαγές κώδικα στους αντίστοιχου ς φακέλους έργων
6. Υποβάλετε ζητήματα συγχώνευσης ( pull requests) ακολουθώντας τις οδηγίες σ υ μβολή ς
6. Υποβάλετε pull requests ακολουθώντας τις οδηγίες σ υ νεισφορά ς
### Για Μαθητές
### Για Μαθητές
1. Διακλάδωση ή κλωνοποίηση του αποθετηρίου
1. Κάντε fork ή κλωνοποιήστε το αποθετήριο
2. Πλοηγηθείτε στους φακέλους μαθημάτων με σειρά
2. Πλοηγηθείτε διαδοχικά στους φακέλους των μαθημάτων
3. Διαβάστε τα αρχεία README κάθε μαθήματος
3. Διαβάστε τα αρχεία README κάθε μαθήματος
4. Ολοκληρώστε τα κουίζ πριν το μάθημα στη διεύθυνση https://ff-quizzes.netlify.app/web/
4. Ολοκληρώστε τα προ-μαθήματος κουίζ στο https://ff-quizzes.netlify.app/web/
5. Εργαστείτε σ τα παραδείγματα κώδικα στους φακέλους μαθημάτων
5. Ε πεξε ργαστείτε τα παραδείγματα κώδικα στους φακέλους μαθημάτων
6. Ολοκληρώστε εργασίες και προκλήσεις
6. Ολοκληρώστε εργασίες και προκλήσεις
7. Κάντε τα κουίζ μετά το μάθημα
7. Πραγματοποιήστε τα μετα-μαθήματος κουίζ
### Ζωντανή Ανάπτυξη
### Ζωντανή Ανάπτυξη
- ** Τεκμηρίωση**: Εκτελέστε `docsify serve` στο ριζικό φάκελο (θύρα 3000)
- ** Τεκμηρίωση**: Εκτελέστε `docsify serve` από τη ρίζα (θύρα 3000)
- **Quiz App** : Εκτελέστε `npm run dev` στον φάκελο quiz-app
- **Quiz App** : Εκτελέστε `npm run dev` στον φάκελο quiz-app
- ** Έργα**: Χρησιμοποιήστε την επέκταση Live Server του VS Code γ ι α έργα HTML
- ** Έργα**: Χρησιμοποιήστε το Live Server extension του VS Code γ ι α έργα HTML
- **API Έργα** : Εκτελέστε `npm start` στους αντίστοιχους φακέλους API
- **API Έργα** : Εκτελέστε `npm start` στους αντίστοιχους φακέλους API
## Οδηγίες Δοκιμών
## Οδηγίες Δοκιμών
@ -110,85 +110,85 @@ python api.py
```bash
```bash
cd quiz-app
cd quiz-app
npm run lint # Ελέγξτε γ ι α προβλή ματα στυλ κώδικα
npm run lint # Έλεγχος γ ι α θέ ματα στυλ κώδικα
npm run build # Επαληθεύστε ότι η κατασκευή ολοκληρώνεται με επιτυχία
npm run build # Επαλήθευση επιτυχίας κατασκευής
```
```
### Δοκιμές API Τράπεζας
### Δοκιμές Bank API
```bash
```bash
cd 7-bank-project/api
cd 7-bank-project/api
npm run lint # Ελέγξτε γ ι α προβλή ματα στυλ κώδικα
npm run lint # Έλεγχος γ ι α θέ ματα στυλ κώδικα
node server.js # Επαληθεύστε ότι ο διακομιστής ξεκινά χωρίς σφάλματα
node server.js # Επιβεβαίωση ότι ο διακομιστής ξεκινά χωρίς σφάλματα
```
```
### Γενική Προσέγγιση Δοκιμών
### Γενική Προσέγγιση Δοκιμών
- Πρόκειται γ ι α εκπαιδευτικό αποθετήριο χωρίς πλήρει ς αυτοματοποιημένες δοκιμές
- Πρόκειται γ ι α εκπαιδευτικό αποθετήριο χωρίς ολοκληρωμένε ς αυτοματοποιημένες δοκιμές
- Η χειροκίνητη δοκιμή εστιάζει σε:
- Ο ι χειροκίνητες δοκιμές εστιάζουν σε:
- Εκτέλεση παραδειγμάτων χωρίς σφάλματα
- Εκτέλεση παραδειγμάτων κώδικα χωρίς σφάλματα
- Ο ι σύνδεσμοι στην τεκμηρίωση λειτουργούν σωστά
- Ο ι σύνδεσμοι στην τεκμηρίωση λειτουργούν σωστά
- Ο ι διαδικασίες κατασκευή ς έργων ολοκληρώνονται επιτυχώς
- Ο ι κατασκευέ ς έργων ολοκληρώνονται επιτυχώς
- Τ α παραδείγματα ακολουθούν βέλτιστες πρακτικές
- Τ α παραδείγματα ακολουθούν τις βέλτιστες πρακτικές
### Έλεγχοι Πριν την Υποβολή
### Έλεγχοι Πριν την Υποβολή
- Εκτελέστε `npm run lint` σ ε φακέλους με package.json
- Εκτελέστε `npm run lint` σ τους φακέλους με package.json
- Επαληθεύστε ότι ο ι σύνδεσμοι markdown είναι έγκυροι
- Επαληθεύστε ότι ο ι σύνδεσμοι markdown είναι έγκυροι
- Δοκιμάστε τα παραδείγματα κώδικα στον περιηγητή ή Node.js
- Δοκιμάστε παραδείγματα κώδικα στον περιηγητή ή Node.js
- Ελέγξτε ότι ο ι μεταφράσεις διατηρούν τη σωστή δομή
- Ελέγξτε ότι ο ι μεταφράσεις διατηρούν τη σωστή δομή
## Οδηγίες Στυλ Κώδικα
## Οδηγίες Στυλ Κώδικα
### JavaScript
### JavaScript
- Χ ρ ήση σύγχρονης σύνταξης ES6+
- Χ ρ ησιμοποιήστε τον σύγχρονο σύνταξη ES6+
- Ακολουθήστε τις τυπικές ρυθμίσεις ESLint που παρέχονται στα έργα
- Ακολουθήστε τις τυπικές ρυθμίσεις ESLint που παρέχονται στα έργα
- Χρησιμοποιήστε ουσιαστικά ονόματα μεταβλητών και συναρτήσεων γ ι α εκπαιδευτική σαφήνεια
- Χρησιμοποιήστε ουσιαστικά ονόματα μεταβλητών και συναρτήσεων γ ι α εκπαιδευτική σαφήνεια
- Προσθέστε σχόλια που εξηγούν έννοιες γ ι α τους μαθητές
- Προσθέστε σχόλια που εξηγούν έννοιες γ ι α τους μαθητές
- Μορφοποιήστε με Prettier όπου έχει ρυθμιστεί
- Μορφοποιήστε με Prettier όπου είναι ρυθμισμένο
### HTML/CSS
### HTML/CSS
- Σημαντικά στοιχεία HTML5
- Σημαντικά στοιχεία HTML5
- Αρχές σχεδίασης γ ι α ευέλικτο σχεδιασμό (responsive)
- Αρχές σχεδιασμού προσαρμοστικής εμφάνισης (responsive)
- Καθαρούς κανόνες ονοματοδοσ ίας κλάσεων
- Καθαρούς κανόνες ονοματολογ ίας κλάσεων
- Σχόλια που εξηγούν τις τεχνικές CSS γ ι α εκπαιδευτικούς σκοπού ς
- Σχόλια που εξηγούν τεχνικές CSS γ ι α μαθητέ ς
### Python
### Python
- Οδηγίες στυλ PEP 8
- Χρήση οδηγιών στυλ PEP 8
- Καθαρά, εκπαιδευτικά παραδείγματα κώδικα
- Καθαρά, εκπαιδευτικά παραδείγματα κώδικα
- Τύποι (type hints) όπου είναι χρήσιμο γ ι α τη μάθηση
- Χρήση δηλώσεων τύπων όπου βοηθούν στην εκ μάθηση
### Τεκμηρίωση Markdown
### Τεκμηρίωση σε Markdown
- Σαφής ιεραρχία επικεφαλίδων
- Σαφή ιεραρχία επικεφαλίδων
- Μπλοκ κώδικα με καθορισμένη γλώσσα
- Μπλοκ κώδικα με καθορισμένη γλώσσα
- Συνδέσμους σε επιπλέον πόρους
- Σύνδεσμοι γ ι α επιπλέον πόρους
- Στιγμιότυπα και εικόνες στους φακέλους `images/`
- Στιγμιότυπα και εικόνες στους φακέλους `images/`
- Εναλλακτικό κείμενο (alt text) γ ι α πρόσβαση
- Εναλλακτικό κείμενο (alt text) γ ι α τις εικόνες γ ι α προσβασιμότητα
### Οργάνωση Αρχείων
### Οργάνωση Αρχείων
- Τ α μαθήματα αριθμούνται διαδοχικά (1-getting-started-lessons, 2-js-basics, κ.λπ .)
- Μαθήματα με αριθμημένη ακολουθία (1-getting-started-lessons, 2-js-basics κ.ά .)
- Κάθε έργο έχει φακέλους `solution/` και συχνά `start/` ή `your-work/`
- Κάθε έργο έχει φακέλους `solution/` και συχνά `start/` ή `your-work/`
- Εικόνες αποθηκεύονται σε φακέλους `images/` ανά μάθημα
- Εικόνες φυλαγμένες σε φακέλους `images/` κάθε μαθήματος
- Μεταφράσεις σε δομή `translations/{language-code}/`
- Μεταφράσεις σε δομή `translations/{language-code}/`
## Κατασκευή και Ανάπτυξη
## Κατασκευή και Ανάπτυξη
### Ανάπτυξη Quiz App (Azure Static Web Apps)
### Ανάπτυξη Quiz App (Azure Static Web Apps)
Η εφαρμογή quiz-app είναι διαμορφωμένη γ ι α ανάπτυξη σε Azure Static Web Apps:
Τ ο quiz-app είναι ρυθμισμένο γ ι α ανάπτυξη σε Azure Static Web Apps:
```bash
```bash
cd quiz-app
cd quiz-app
npm run build # Δημιουργεί τον φάκελο dist/
npm run build # Δημιουργεί φάκελο dist/
# Αναπτύσσει μέσω ροής εργασίας GitHub Actions κατά την αποστολή στον κλάδ ο main
# Αναπτύσσει μέσω ροής εργασίας GitHub Actions κατά την ώθηση στ ο main
```
```
Διαμόρφωση Azure Static Web Apps:
Ρυθμίσεις Azure Static Web Apps:
- ** Τοποθεσία εφαρμογής**: `/quiz-app`
- ** Τοποθεσία εφαρμογής**: `/quiz-app`
- ** Τοποθεσία εξόδου**: `dist`
- ** Τοποθεσία εξόδου**: `dist`
- ** Ροή εργασίας**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
- ** Ροή εργασίας**: `.github/workflows/azure-static-web-apps-ashy-river-0debb7803.yml`
@ -196,7 +196,7 @@ npm run build # Δημιουργεί τον φάκελο dist/
### Δημιουργία PDF Τεκμηρίωσης
### Δημιουργία PDF Τεκμηρίωσης
```bash
```bash
npm install # Εγκατάσταση docsify-to-pdf
npm install # Εγκαταστήστε το docsify-to-pdf
npm run convert # Δημιουργία PDF από docs
npm run convert # Δημιουργία PDF από docs
```
```
@ -204,75 +204,75 @@ npm run convert # Δημιουργία PDF από docs
```bash
```bash
npm install -g docsify-cli # Εγκαταστήστε το Docsify παγκοσμίως
npm install -g docsify-cli # Εγκαταστήστε το Docsify παγκοσμίως
docsify serve # Υπηρετήστε στο localhost:3000
docsify serve # Εκτελέστε στον localhost:3000
```
```
### Κατασκευές ανά Έργο
### Κατασκευές ανά Έργο
Κάθε φάκελος έργου μπορεί ν α έχει τη δική του διαδικασία κατασκευής:
Κάθε φάκελος έργου μπορεί ν α έχει δική του διαδικασία κατασκευής:
- Vue έργα: `npm run build` δημιουργεί bundles παραγωγής
- Έργα Vue: `npm run build` δημιουργεί παραγωγικά πακέτα
- Στατικά έργα: Δεν απαιτείται βήμα κατασκευής, εξυπηρετού νται απευθείας τα αρχεία
- Στατικά έργα: Δεν απαιτείται βήμα κατασκευής, σερβίρο νται απευθείας τα αρχεία
## Οδηγίες Pull Request
## Οδηγίες Pull Request
### Μορφή Τίτλου
### Μορφή Τίτλου
Χρησιμοποιήστε σαφείς, περιγραφικούς τίτλους που υποδεικνύουν την περιοχή αλλαγής:
Χρησιμοποιήστε σαφείς, περιγραφικούς τίτλους που υποδεικνύουν την περιοχή αλλαγής:
- `[Quiz-app] Προσθήκη νέου κουίζ γ ι α μάθημα X `
- `[Quiz-app] Προσθήκη νέου κουίζ γ ι α μάθημα Χ `
- `[Lesson-3] Διόρθωση τυπογραφικού λάθους στο έργο terrarium`
- `[Lesson-3] Διόρθωση τυπογραφικού λάθους στο έργο terrarium`
- `[Translation] Προσθήκη ισπανικής μετάφρασης γ ι α μάθημα 5`
- `[Translation] Προσθήκη ισπανικής μετάφρασης γ ι α το μάθημα 5`
- `[Docs] Ενημέρωση οδηγιών ρύθμισης`
- `[Docs] Ενημέρωση οδηγιών ρύθμισης`
### Απαιτούμενοι Έλεγχοι
### Απαιτούμενοι Έλεγχοι
Πριν την υποβολή PR:
Πριν από την υποβολή PR:
1. ** Ποιότητα Κώδικα**:
1. ** Ποιότητα Κώδικα**:
- Εκτελέστε `npm run lint` στους επηρεασμένους φακέλους έργων
- Εκτελέστε `npm run lint` στους επηρεασμένους φακέλους έργων
- Διορθώστε όλα τα σφάλματα και προειδοποιήσεις lint
- Διορθώστε όλα τα σφάλματα και προειδοποιήσεις linting
2. ** Επαλήθευση Κατασκευής**:
2. ** Επαλήθευση Κατασκευής**:
- Εκτελέστε `npm run build` α ν ισχύει
- Εκτελέστε `npm run build` εά ν ισχύει
- Βεβαιωθείτε ότι δεν υπάρχουν σφάλματα κατασκευής
- Βεβαιωθείτε ότι δεν υπάρχουν σφάλματα κατασκευής
3. ** Επαλήθευση Συνδέσμων**:
3. ** Επαλήθευση Συνδέσμων**:
- Δοκιμάστε όλους τους συνδέσμους markdown
- Δοκιμάστε όλους τους συνδέσμους markdown
- Επαληθεύστε ότι ο ι αναφορές εικόνων λειτουργούν
- Επαληθεύστε ότι ο ι αναφορές εικόνων λειτουργούν
4. ** Α ν α σκόπ ηση Περιεχομένου**:
4. ** Α ν α θεώρ ηση Περιεχομένου**:
- Διορθώστε ορθογραφία και γραμματική
- Διόρθωση ορθογραφίας και γραμματικής
- Βεβαιωθείτε ότι τα παραδείγματα κώδικα είναι σωστά και εκπαιδευτικά
- Επιβεβαίωση ότι τα παραδείγματα κώδικα είναι σωστά και εκπαιδευτικά
- Επαληθεύστε ότι ο ι μεταφράσεις διατηρούν την αρχική έννοια
- Επαλήθευση σωστής διατήρησης νοήματος στις μεταφράσεις
### Απαιτήσεις Συμβολή ς
### Απαιτήσεις Συνεισφορά ς
- Αποδοχή Microsoft CLA (αυτόματος έλεγχος στο πρώτο PR)
- Αποδοχή του Microsoft CLA (αυτόματος έλεγχος στην πρώτη PR)
- Ακολουθήστε τον [Κώδικα Συμπεριφοράς Α ν ο ι κτού Κώδικα Microsoft](https://opensource.microsoft.com/codeofconduct/ )
- Ακολουθήστε τον [Κώδικα Συμπεριφοράς Α ν ο ι χτού Κώδικα της Microsoft](https://opensource.microsoft.com/codeofconduct/ )
- Δεί τε το [CONTRIBUTING.md ](./CONTRIBUTING.md ) γ ι α λεπτομερείς οδηγίες
- Διαβάσ τε το [CONTRIBUTING.md ](./CONTRIBUTING.md ) γ ι α λεπτομερείς οδηγίες
- Αναφέρετε αριθμούς ζητημάτων στη περιγραφή PR, εφόσον εφαρμόζετα ι
- Αναφέρετε αριθμούς ζητημάτων στην περιγραφή PR α ν ισχύει
### Διαδικασία Αναθεώρησης
### Διαδικασία Αναθεώρησης
- Τ α PR αναθεωρούνται από διαχειριστές και κοινότητα
- Ο ι PR ελέγχονται από συντηρητές και την κοινότητα
- Προτεραιότητα στην εκπαιδευτική σαφήνεια
- Προτεραιότητα στην εκπαιδευτική σαφήνεια
- Τ α παραδείγματα κώδικα πρέπει ν α ακολουθούν τις τρέχουσες βέλτιστες πρακτικές
- Τ α παραδείγματα κώδικα ν α ακολουθούν τις τρέχουσες βέλτιστες πρακτικές
- Ο ι μεταφράσεις ελέγχονται γ ι α ακρίβεια και πολιτιστ ική καταλληλότητα
- Ο ι μεταφράσεις ελέγχονται γ ι α ακρίβεια και πολιτισμ ική καταλληλότητα
## Σύστημα Μετάφρασης
## Σύστημα Μετάφρασης
### Αυτόματη Μετάφραση
### Αυτόματη Μετάφραση
- Χ ρ ήση GitHub Actions με ροή εργασίας co-op-translator
- Χ ρ ησιμοποιεί GitHub Actions με ροή εργασίας co-op-translator
- Μετάφραση σε πάνω από 50 γλώσσες αυτόματα
- Μεταφράζει σε πάνω από 50 γλώσσες αυτόματα
- Αρχεία πηγής σ τους κύριους φακέλους
- Αρχεία πηγής σ ε κύριους φακέλους
- Μεταφρασμένα αρχεία σε `translations/{language-code}/`
- Τ α μεταφρασμένα αρχεία βρίσκονται σε `translations/{language-code}/`
### Προσθήκη Χειροκίνητων Βελτιώσεων
### Προσθήκη Χειροκίνητων Βελτιώσεων Μετάφρασης
1. Βρεί τε το αρχείο σε `translations/{language-code}/`
1. Εντοπίσ τε το αρχείο σε `translations/{language-code}/`
2. Κάντε βελτιώσεις διατηρώντας τη δομή
2. Κάντε βελτιώσεις διατηρώντας τη δομή
3. Εξασφαλίστε ότι τα παραδείγματα κώδικα παραμένουν λειτουργικά
3. Εξασφαλίστε ότι τα παραδείγματα κώδικα παραμένουν λειτουργικά
4. Δοκιμάστε το τοπικό κουίζ α ν υπάρχει
4. Δοκιμάστε όλο το τοπικοποιημένο περιεχ όμενο κουίζ
### Μεταδεδομένα Μετάφρασης
### Μεταδεδομένα Μετάφρασης
@ -289,120 +289,120 @@ CO_OP_TRANSLATOR_METADATA:
-->
-->
```
```
## Αντιμετώπιση Σφαλμάτων και Επίλυση Προβλημάτων
## Αντιμετώπιση και Επίλυση Προβλημάτων
### Συνηθισμένα Προβλή ματα
### Συνήθη Θέ ματα
**Τ ο quiz app δεν ξεκινά**:
**Η εφαρμογή Quiz δεν ξεκινά**:
- Ελέγξτε την έκδοση Node.js (συνιστάται v14+)
- Ελέγξτε την έκδοση Node.js (συνιστάται v14+)
- Διαγράψτε τους φακέλους `node_modules` και το αρχείο `package-lock.json` , εκτελέστε ξανά `npm install`
- Διαγράψτε `node_modules` και `package-lock.json` , εκτελέστε ξανά `npm install`
- Ελέγξτε γ ι α σ υγκρούσεις θυρών (ο προεπιλεγμένος Vite χρησιμοποιεί θύρα 5173)
- Ελέγξτε γ ι α σ ύγκρουση θυρών (προεπιλογή: Vite χρησιμοποιεί θύρα 5173)
**Ο server του API δεν ξεκινά**:
**Ο διακομιστής API δεν ξεκινά**:
- Βεβαιωθείτε ότι η έκδοση Node.js είναι >= 10
- Επαληθεύστε ότι η έκδοση Node.js είναι ≥ 10
- Ελέγξτε α ν θύρα είναι ήδη σε χρήση
- Ελέγξτε α ν η θύρα είναι ήδη σε χρήση
- Εξασφαλίστε ότι όλες ο ι εξαρτήσεις έχουν εγκατασταθεί με `npm install`
- Βεβαιωθείτε ότι όλες ο ι εξαρτήσεις είναι εγκατεστημένες με `npm install`
**Η επέκταση περιηγητή δεν φορτώνει**:
**Η επέκταση περιηγητή δεν φορτώνει**:
- Βεβαιωθείτε ότι το manifest.json είναι σωστά διαμορφω μένο
- Επαληθεύστε ότι το manifest.json είναι σωστά μορφοποιη μένο
- Ελέγξτε την κονσόλα του περιηγητή γ ι α σφάλματα
- Ελέγξτε τα σφάλματα στ ην κονσόλα περιηγητή
- Ακολουθήστε τις οδηγίες εγκατάστασης γ ι α επεκτάσεις συγκεκριμένου περιηγητή
- Ακολουθήστε τις οδηγίες εγκατάστασης γ ι α την επέκταση ανά περιηγητή
**Προβλήματα στο έργο συνομιλίας Python**:
**Προβλήματα στο έργο συνομιλίας Python**:
- Εγκαταστήστε το πακέτο OpenAI : `pip install openai`
- Βεβαιωθείτε ότι το πακέτο OpenAI είναι εγκατεστημένο : `pip install openai`
- Βεβαιωθείτε ότι το περιβάλλον μεταβλητής GITHUB_TOKEN είναι ρυθμισμένο
- Επαληθεύστε ότι το περιβάλλον GITHUB_TOKEN έχει οριστεί
- Ελέγξτε τα δικαιώματα πρόσβασης στα GitHub Models
- Ελέγξτε τα δικαιώματα πρόσβασης στα GitHub Models
**Τ ο Docsify δεν εξυπηρετεί τεκμηρίωση**:
**Η Docsify δεν σερβίρει τεκμηρίωση**:
- Εγκαταστήστε το docsify-cli παγκοσμίως: `npm install -g docsify-cli`
- Εγκαταστήστε docsify-cli παγκοσμίως: `npm install -g docsify-cli`
- Εκτελέστε από το ριζικό φάκελο του αποθετηρίου
- Εκτελέστε από την ρίζα του αποθετηρίου
- Βεβαιωθείτε ότι το αρχείο `docs/_sidebar.md` υπάρχει
- Ελέγξτε ότι υπάρχει το αρχείο `docs/_sidebar.md`
### Συμβουλές Περιβάλλοντος Ανάπτυξης
### Συμβουλές Περιβάλλοντος Ανάπτυξης
- Χρησιμοποιήστε VS Code με την επέκταση Live Server γ ι α έργα HTML
- Χρησιμοποιήστε VS Code με το Live Server extension γ ι α έργα HTML
- Εγκαταστήστε τις επεκτάσεις ESLint και Prettier γ ι α συνεπή μορφοποίηση
- Εγκαταστήστε τις επεκτάσεις ESLint και Prettier γ ι α ομοιόμορφη μορφοποίηση
- Χρησιμοποιήστε τα εργαλεία ανάπτυξης του περιηγητή γ ι α αποσφαλμάτωση JavaScript
- Χρησιμοποιήστε τα DevTools του περιηγητή γ ι α αποσφαλμάτωση JavaScript
- Για έργα Vue, εγκαταστήστε την επέκταση Vue DevTools στον περιηγητή
- Για έργα Vue, εγκαταστήστε την επέκταση Vue DevTools γ ι α περιηγητές
### Θέματα Απόδοσης
### Θέματα Απόδοσης
- Ο μεγάλος αριθμός μεταφρασμένων αρχείων (πάνω από 50 γλώσσες) καθιστά τους πλήρεις κλώνους μεγάλους
- Ο μεγάλος αριθμός μεταφρασμένων αρχείων (50+ γλώσσες) κάνει τα πλήρη κλωνοποιημένα αρχεία μεγάλα
- Χρησιμοποιήστε shallow clone α ν εργάζεστε μόνο με περιεχόμενο: `git clone --depth 1`
- Χρησιμοποιήστε επιφανειακό κλώνο α ν εργάζεστε μόνο με το περιεχόμενο: `git clone --depth 1`
- Αποφύγετε τη συμπερίληψη μεταφράσεων σε αναζητήσεις όταν εργάζεσ τε σε αγγλικό περιεχόμενο
- Εξαιρέστε τις μεταφράσεις από αναζητήσεις όταν δουλεύε τε σε αγγλικό περιεχόμενο
- Ο ι διαδικασίες κατασκευής μπορεί ν α είναι αργές στην πρώτη εκτέλεση (npm install, Vite build )
- Ο ι διαδικασίες κατασκευής μπορεί ν α είναι αργές στην πρώτη εκτέλεση (npm install, κατασκευή Vite)
## Θέματα Ασφαλείας
## Θέματα Ασφαλείας
### Περιβάλλον Μεταβλητών
### Μεταβλητές Περιβάλλοντος
- Τ α κλειδιά API δεν πρέπει ποτέ ν α δεσμ εύονται στο αποθετήριο
- Τ α κλειδιά API δεν πρέπει ποτέ ν α αποθηκ εύονται στο αποθετήριο
- Χρησιμοποιήστε αρχεία `.env` (ήδη στο `.gitignore` )
- Χρησιμοποιήστε αρχεία `.env` (ήδη στο `.gitignore` )
- Τεκμηριώστε τις απαιτούμενες περιβαλλοντικές μεταβλητέ ς στα README των έργων
- Καταγράψτε τις απαιτούμενες μεταβλητές περιβάλλοντο ς στα README των έργων
### Έργα Python
### Έργα Python
- Χρησιμοποιήστε εικονικά περιβάλλοντα: `python -m venv venv`
- Χρησιμοποιήστε εικονικά περιβάλλοντα: `python -m venv venv`
- Κρατ ήστε τις εξαρτήσεις ενημερωμένες
- Διατηρ ήστε τις εξαρτήσεις ενημερωμένες
- Τ α tokens GitHub πρέπει ν α έχουν ελάχιστα απαιτούμενα δικαιώματα
- Τ α GitHub tokens πρέπει ν α έχουν τα ελάχιστα απαιτούμενα δικαιώματα
### Πρόσβαση σ τα GitHub Models
### Πρόσβαση σ ε GitHub Models
- Απαιτούνται Personal Access Tokens (PAT)
- Απαιτούνται Personal Access Tokens (PAT) γ ι α GitHub Models
- Τ α tokens πρέπει ν α αποθηκεύονται ως περιβάλλον μεταβλητέ ς
- Τ α tokens πρέπει ν α αποθηκεύονται ως μεταβλητές περιβάλλοντο ς
- Ποτέ μην δεσμεύετε tokens ή διαπιστευτήρια
- Ποτέ μην αποθηκεύετε tokens ή διαπιστευτήρια στο αποθετήριο
## Πρόσθετες Σημειώσεις
## Πρόσθετες Σημειώσεις
### Στοχευμένο Κοινό
### Στόχος Κοινού
- Απόλυτο ι αρχάριοι στην ανάπτυξη ιστοσελίδων
- Απόλυτα αρχάριοι στην ανάπτυξη ιστοσελίδων
- Μαθ ητές και αυτοδίδακτοι
- Φοιτ ητές και αυτοδίδακτοι
- Εκπαιδευτικοί που χρησιμοποιούν το πρόγραμμα σ ε τάξεις
- Εκπαιδευτικοί που χρησιμοποιούν το πρόγραμμα σ την τάξη
- Τ ο περιεχόμενο σχεδιάστηκε με προσβασιμότητα και σταδιακή ανάπτυξη δεξιοτήτων
- Τ ο περιεχόμενο σχεδιάστηκε γ ι α προσβασιμότητα και σταδιακή ανάπτυξη δεξιοτήτων
### Εκπαιδευτική Φιλοσοφία
### Εκπαιδευτική Φιλοσοφία
- Προσέγγιση μάθησης βασισμένη σε έργα
- Προσέγγιση μάθησης βασισμένη σε έργα
- Συχνές αξιολογήσεις γνώσης (κουίζ)
- Συχνές αξιολογήσεις γνώσεων (κουίζ)
- Πρακτικές ασκήσεις κώδικα
- Πρακτικές ασκήσεις κωδικοποίησης
- Παραδείγματα εφαρμογών πραγματικού κόσμου
- Παραδείγματα εφαρμογών πραγματικού κόσμου
- Εστίαση στα βασικά πριν τα πλαίσια εργασίας
- Εστίαση στα βασικά πριν τα frameworks
### Συντήρη ση Αποθετηρίου
### Διαχείρι ση Αποθετηρίου
- Ενεργή κοινότητα μαθητών και συνεργατώ ν
- Ενεργή κοινότητα μαθητών και συνεισφερόντω ν
- Τακτικές ενημερώσεις εξαρτήσεων και περιεχομένου
- Τακτικές ενημερώσεις εξαρτήσεων και περιεχομένου
- Παρακολούθηση ζητημάτων και συζητήσεων από τους διαχειρισ τές
- Παρακολούθηση ζητημάτων και συζητήσεων από συντηρη τές
- Αυτόματ ες ενημερώσεις μεταφράσεων μέσω GitHub Actions
- Αυτοματοποιημέν ες ενημερώσεις μεταφράσεων μέσω GitHub Actions
### Σχετικοί Πόροι
### Σχετικοί Πόροι
- [ Microsoft Learn modules ](https://docs.microsoft.com/learn/ )
- [Μονάδες Microsoft Learn](https://docs.microsoft.com/learn/ )
- [Πόροι Student Hub ](https://docs.microsoft.com/learn/student-hub/ )
- [Πόροι Student Hub ](https://docs.microsoft.com/learn/student-hub/ )
- [GitHub Copilot ](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot ) συνιστάται γ ι α μαθητές
- [GitHub Copilot ](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot ) συνιστάται γ ι α μαθητές
- Πρόσθετα μαθήματα: Generative AI, Data Science, ML, IoT curricula διαθέσιμα
- Πρόσθετα μαθήματα: Γενετική Τ Ν , Επιστήμη Δεδομένων, ML, IoT διαθέσιμα
### Εργασία με Συγκεκριμένα Έργα
### Εργασία με Συγκεκριμένα Έργα
Για λεπτομερείς οδηγίες στα επιμέρους έργα, ανατρέξτε στα αρχεία README στ α :
Για λεπτομερείς οδηγίες γ ι α κάθε έργο, ανατρέξτε στα README αρχεία :
- `quiz-app/README.md` - Εφαρμογή quiz Vue 3
- `quiz-app/README.md` - Εφαρμογή quiz Vue 3
- `7-bank-project/README.md` - Εφαρμογή τραπεζικού με αυθεντικ οποίηση
- `7-bank-project/README.md` - Τραπεζική εφαρμογή με ταυτ οποίηση
- `5-browser-extension/README.md` - Ανάπτυξη επέκτασης περιηγητή
- `5-browser-extension/README.md` - Ανάπτυξη επέκτασης περιηγητή
- `6-space-game/README.md` - Ανάπτυξη παιχνιδιού με Canvas
- `6-space-game/README.md` - Ανάπτυξη παιχνιδιού με καμβά
- `9-chat-project/README.md` - Έργο βοηθού συνομιλίας AI
- `9-chat-project/README.md` - Έργο βοηθού συνομιλίας με Τ Ν
### Δομή Monorepo
### Δομή Monorepo
Α ν και δεν είναι παραδοσιακό monorepo, αυτό το αποθετήριο περιέχει πολλαπλά ανεξάρτητα έργα:
Α ν και δεν είναι παραδοσιακό monorepo, αυτό το αποθετήριο περιέχει πολλαπλά ανεξάρτητα έργα:
- Κάθε μάθημα είναι αυτόνομο
- Κάθε μάθημα είναι αυτόνομο
- Τ α έργα δεν μοιράζονται εξαρτήσεις
- Τ α έργα δεν μοιράζονται εξαρτήσεις
- Μπορείτε ν α εργαστείτε σε μεμονωμένα έργα χωρίς ν α επηρεάζονται τα υπόλοιπ α
- Εργαστείτε σε μεμονωμένα έργα χωρίς ν α επηρεάζετε τα άλλ α
- Κλωνοποιήστε ολόκληρο το repo γ ι α πλήρη εμπειρία προγράμματος
- Κλωνοποιήστε ολόκληρο το αποθετήριο γ ι α πλήρη εμπειρία προγράμματος σπουδών
---
---
<!-- CO - OP TRANSLATOR DISCLAIMER START -->
<!-- CO - OP TRANSLATOR DISCLAIMER START -->
**Αποποίηση ευθυνών**:
**Αποποίηση ευθυνών**:
Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία μετάφρασης με τεχνητή νοημοσύνη [Co-op Translator ](https://github.com/Azure/co-op-translator ). Παρόλο που προσπαθούμε γ ι α ακρίβεια, παρακαλούμε ν α γνωρίζετε ότι ο ι αυτοματοποιημένες μεταφράσεις μπορεί ν α περιέχουν λάθη ή ανακρίβειες. Τ ο πρωτότυπο έγγραφο στη μητρική του γλώσσα πρέπει ν α θεωρείται η επίσημη πηγή. Για κρίσιμες πληροφορίες συνιστάται η επαγγελματική μετάφραση από ανθρώπους. Δεν φέρουμε ευθύνη γ ι α τυχόν παρεξηγήσεις ή λανθασμένες ερμηνείες που απορρέ ο υ ν από τη χρήση αυτής της μετάφρασης.
Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία αυτόματης μετάφρασης AI [Co-op Translator ](https://github.com/Azure/co-op-translator ). Παρόλο που προσπαθούμε γ ι α ακρίβεια, παρακαλούμε ν α γνωρίζετε ότι ο ι αυτοματοποιημένες μεταφράσεις μπορεί ν α περιέχουν σφάλματα ή ανακρίβειες. Τ ο πρωτότυπο έγγραφο στη μητρική του γλώσσα πρέπει ν α θεωρείται η αυθεντική πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη γ ι α οποιεσδήποτε παρερμηνείες ή παρανοήσεις προκύψ ο υ ν από τη χρήση αυτής της μετάφρασης.
<!-- CO - OP TRANSLATOR DISCLAIMER END -->
<!-- CO - OP TRANSLATOR DISCLAIMER END -->