Skip to content

angelospk/rationvetauth

Repository files navigation

Εφαρμογή Βελτιστοποίησης Σιτηρεσίων (Ration Optimizer)

Μια ολοκληρωμένη διαδικτυακή εφαρμογή για τον υπολογισμό και τη βελτιστοποίηση σιτηρεσίων παραγωγικών ζώων. Σχεδιασμένη για φοιτητές Κτηνιατρικής/Γεωπονίας, επαγγελματίες και ιδιώτες που επιθυμούν να δημιουργήσουν ισορροπημένα και οικονομικά σιτηρέσια.

🚀 Δυνατότητες

  • Βελτιστοποίηση Κόστους: Χρήση Γραμμικού Προγραμματισμού (Linear Programming - GLPK) για την ελαχιστοποίηση του κόστους διατροφής, καλύπτοντας ταυτόχρονα όλες τις θρεπτικές ανάγκες.
  • Διαχείριση Χρηστών: Σύστημα εγγραφής και σύνδεσης χρηστών (Φοιτητές & Ιδιώτες) με χρήση PocketBase.
  • Προσαρμοσμένη Βάση Δεδομένων:
    • Οι Τροφές μου: Δυνατότητα προσθήκης και επεξεργασίας τροφών με τις δικές τους θρεπτικές αναλύσεις και τιμές.
    • Τα Σιτηρέσιά μου: Αποθήκευση, προβολή και επεξεργασία παλαιότερων σιτηρεσίων.
  • Ευελιξία: Υποστήριξη για διάφορα είδη ζώων και παραμετροποίηση περιορισμών (π.χ. μέγιστη/ελάχιστη ποσότητα τροφής).
  • Φιλικό Περιβάλλον: Μοντέρνος σχεδιασμός με χρήση SvelteKit, Skeleton UI και Tailwind CSS.

🛠️ Τεχνολογίες

Το project βασίζεται σε σύγχρονες τεχνολογίες web:

📊 Ροή Εργασίας (Workflow)

graph TD
    A[Επισκέπτης] -->|Εγγραφή/Σύνδεση| B(Χρήστης)
    B --> C{Επιλογές}
    C -->|Διαχείριση Τροφών| D[Οι Τροφές μου]
    C -->|Δημιουργία Σιτηρεσίου| E[Νέο Σιτηρέσιο]
    C -->|Ιστορικό| F[Τα Σιτηρέσιά μου]
    D --> E
    E --> G[Επιλογή Ζώου]
    G --> H[Επιλογή Τροφών]
    H --> I[Ορισμός Περιορισμών]
    I --> J[Επίλυση με GLPK]
    J --> K[Προβολή Αποτελέσματος]
    K --> L[Αποθήκευση]
Loading

🏗️ Αρχιτεκτονική

Η εφαρμογή τρέχει εξ ολοκλήρου στον browser (client-side) όσον αφορά την επίλυση του μαθηματικού μοντέλου, ενώ επικοινωνεί με το PocketBase για την πιστοποίηση και την αποθήκευση δεδομένων.

graph LR
    subgraph Client [Browser]
        UI[User Interface ]
        Logic[App Logic]
        Solver[GLPK.js / Yalps]
    end
    subgraph Server [Cloud / Local]
        PB[PocketBase - Auth & DB]
    end
    UI --> Logic
    Logic --> Solver
    Logic <-->|HTTPS| PB
Loading

⚙️ Εγκατάσταση και Εκτέλεση

Για να τρέξετε την εφαρμογή τοπικά στον υπολογιστή σας:

  1. Κλωνοποίηση του αποθετηρίου:

    git clone <repository-url>
    cd r
  2. Εγκατάσταση εξαρτήσεων: Βεβαιωθείτε ότι έχετε εγκατεστημένο το Node.js.

    npm install
    # ή
    pnpm install
  3. Ρύθμιση Περιβάλλοντος: Η εφαρμογή είναι ρυθμισμένη να συνδέεται σε ένα demo PocketBase instance (https://rationvetauth.pockethost.io/). Αν θέλετε να χρησιμοποιήσετε δικό σας backend, ενημερώστε το αρχείο src/lib/pocketbase.ts ή δημιουργήστε ένα αρχείο .env.

  4. Εκκίνηση Development Server:

    npm run dev
  5. Άνοιγμα στον Browser: Επισκεφθείτε τη διεύθυνση http://localhost:5173.

🤝 Συνεισφορά

Οι συνεισφορές είναι ευπρόσδεκτες! Αν βρείτε κάποιο σφάλμα ή έχετε ιδέες για βελτίωση, παρακαλώ ανοίξτε ένα issue ή ένα pull request.

About

Resources

Stars

Watchers

Forks

Contributors 2

  •  
  •