

يحتوي هذا المستودع على رمز تجريبي لسلسلة تعلم برمجة YouTube الخاصة بي حول Rust و React و TypeScript و Docker و Terraform و Kubernetes. لهذا المشروع ، نقوم بإنشاء Foodi ، أداة تسجيل الوجبات.
يهدف هذا المشروع إلى أن يكون بمثابة مثال ، ويمكن استخدامه كخليفي لبدء مشروعك الخاص. يمكنك أيضًا مشاهدة مقاطع الفيديو لمعرفة المزيد حول كيفية بنائها (معظمها من التجربة والخطأ ، مثل الكثير من الأشياء في الحياة؟).
هذا الريبو لديه الميزات التالية:
يمكنك العثور على مقاطع الفيديو على YouTube أدناه:
في هذه السلسلة ، نقوم ببناء Foodi ، وهي أداة لوجر/تتبع الوجبات القائمة على الويب.
لبناء الواجهة الخلفية للصدأ ، ستحتاج إلى تثبيت الصدأ الليلي مع Rustup. أولاً ، انتقل إلى https://rustup.rs/ وتثبيت Rustup. ثم ، قم بتثبيت Rust Nightly:
$ rustup default nightly
...بمجرد تثبيت البناء الليلي ، يمكنك بناء الواجهة الخلفية.
$ cd foodi-backend
$ cargo build
... لإنشاء مخطط قاعدة البيانات الأولية ، قم بتشغيل نصوص الترحيل باستخدام sqlx :
$ cargo install sqlx-cli
...
$ sqlx migrate run
...أخيرًا ، يمكنك الآن تشغيل خادم الواجهة الخلفية:
$ cargo run لإنشاء وتشغيل أصول الواجهة الأمامية والخادم ، ستحتاج إلى نسخة حديثة من Node.js والغزل المثبتة. باستخدام Homebrew على MacOS ، يمكنك تثبيته باستخدام Homebrew:
$ brew install yarn
...قم بتثبيت تبعيات حزمة الواجهة الأمامية باستخدام الغزل:
$ cd foodi-frontend
$ yarn install
... استخدم parcel لتشغيل خادم تطوير الواجهة الأمامية:
$ parcel index.html
... على افتراض أنك قمت بتثبيت Docker ، قم بتشغيل أمر Build من المستوى العلوي من الريبو:
$ docker build . -t foodi:latest
...بمجرد الانتهاء من البناء ، قم بتشغيل الحاوية ، و MAP Port 80 من داخل الحاوية إلى خارج الحاوية على المنفذ 8080 (على جهاز المضيف الخاص بك):
$ docker run -p 8080:80 foodi:latest
... ؟ يمكنك الآن فتح http://localhost:8080/ في متصفحك واختبار التطبيق.