
בחירת טכנולוגיות לפרויקט קליל: Next.js, Tailwind, Prisma, Three.js ועוד
פרויקט חסר משמעות דורש טכנולוגיות קלילות - כל מה שהייתי צריך לפרויקטון קטנטן. 😇 אז כבר כתבתי לכם שגיא השתמש לאתר רכבים שלו בnext.js - talwind -three - prisma - sql. ועכשיו אני גם אנמק - בעיקר כדי שאם אתם מתלבטים על אותם טכנולוגיות תוכלו להיעזר בפוסט הזה (אינשאללה). 😎 הnext+tailwind הבחירה המושלמת לעצלנים. הtypeScript כי אם אתם לא נסחפים עם לתת type לכל קשקוש ולעשות הכל oop (תכנות מונחה עצמים) זה דווקא נחמד. הthree - fiber -drei הספריות הכי קלות לתלת מימד שאני מכיר. הprisma - sql כי צריך לצאת מאיזור הנוחות לפעמים ונמאס קצת מmongo (אל תעלבי - נו באמת, לא התכוונתי לזה. אויש נו) וגם כי כל הטבלאות שלי שטוחות ולא היה צורך בnested של מידע. דברים מעניינים שנתקלתי בהם: הprisma דורשת קצת התנהלות שונה מהשגר ושכח של mongo, ששם אתם יכולים להוסיף ולהוריד בכיף שלכם טבלאות או שדות בלי צורך לעדכן מפורש את השירות ענן שאתם עליו. הdrei+fiber מביאות המון templates מוכנים של תלת מימד מעוצב ויפה תואר בדוקומנטציה שלהם. מניסיון קודם בתלת מימד - פלאפונים (גם הטובים שבהם) לעיתים מפנקים בלאגים מעצבנים. אז ויתרתי על תלת מימד למובייל. 😍 ושמרתי לסוף לשורדים הברקה חמודה - יצרתי קומפוננט לצד קליינט שמשתמש בהוק שבודק אם המכשיר של הלקוח הוא מובייל, ולפי זה מחליט האם לייבא בכלל את הקובץ הנצרך לתלת מימד - בעזרת פיצול קוד, מה שגורם שאם אתם נכנסים ממובייל אתם בכלל לא מקבלים את הקוד והקובץ של המודל תלת מימד (שיכול להגיע לגדלים מבהילים של 20mb), מה שמוביל לאתר קליל בהרבה למובייל. אהבתם? ספרו לחברכם, לא אהבתם? בחייכם! ודאי שאהבתם! יום מגניב ומלא שמחת חיים. 🤠 אז לגיא נשבר לתת פה ושם דקה לאתר רכבים המטופש שלו. 😎 אבל את הרוב הוא סיים והוא מעוניין בדופמינים שיעלו לו למוח מתי שאתם תפרגנו לו - אז הוא מודיע בזו על גירסת דמו לכל המעריצים. 🤑 הקישור:
https://carnaim.vercel.app/מה התפקיד שלכם: לפרגן ולתת הערות. ולא, לא מהסוג של האף שלך עקום אלא ספציפית על האתר שהוא שיתף. תובנות קטנטנות שנאספו: 😊 מי שרוצה את הdb הפשוט ביותר - עדיף mongodb מהשירות ענן המטופש של sql שמצאתי, כל דבר קטן כרוך בבאג קטן (תיקתיקתיקטן). יש מלא קוד html מגניב ומוכן מראש לעצלנים (כמו גיא) עם אלמנטים מעוצבים בtailwind פשוט גגלו. אין להשתמש בlocalstorage או מתודות של client ששייכים לwindow על קומפוננטת קליינט, אלא רק בתוך useEffect או פונקציות (לעובדים עם next, ולעובדים של next - תטפלו בזה) - זה עובד בdev אבל שובר את הdeploy (להסבר המלא - חפשו בעצמכם זה קל למצוא). העליתי את האתר לvercel כי זה הכי קל לדעתי לפחות לnext. הדיווח שגיאות של next בזמן הbuild מדוייק ויעיל, ולא כמו בזמן הפיתוח שכל באג שלהם דורש כדור בדולח וזקנה עם שפם. (hyper hybrid in <a> in <div>). ומי שצועק.ת הייייי אמרת תלת מימד!!!! אז למובייל אין תלת מימד רק לdesktop בגלל שזה חונק את המכשירים הפשוטים. שיהיה אחלה יום תאהבו פיצה ותשנאו מיונז
Yosefus Flavius
כותב הבלוג