[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"site-settings":3,"site-menu":10,"category-php":21},{"siteName":4,"siteDescription":5,"contactEmail":6,"phone":7,"githubUrl":8,"facebookUrl":9},"vdhoangson.com","Ghi chép về lập trình, hệ thống và những điều học được trên đường làm sản phẩm.","contact@vdhoangson.com","+84 387 324 112","https:\u002F\u002Fgithub.com\u002Fvdhoangson","",{"items":11},[12,15,18],{"href":13,"label":14},"\u002F","Mới nhất",{"href":16,"label":17},"\u002Fcategory\u002Fdich-vu","Dịch vụ",{"href":19,"label":20},"\u002Fabout","Về tôi",{"items":22,"total":124,"page":125,"pageSize":126},[23,79],{"id":24,"wordpressId":25,"title":26,"slug":27,"excerpt":28,"contentHtml":29,"status":30,"authorName":31,"seoTitle":26,"seoDescription":28,"featuredMediaId":32,"featuredMedia":33,"categories":46,"tags":53,"publishedAt":77,"createdAt":77,"updatedAt":78},"5c54b58d-b689-47c3-bcce-51cc1b7983f2",16363,"Cuộc đại chiến giữa hai môn phái: Session Auth vs JWT Auth","cuoc-dai-chien-giua-hai-mon-phai-session-auth-vs-jwt-auth","I. Bôn tẩu giang hồ Từ thuở giang hồ còn sơ khai, các ứng dụng web cổ điển sử dụng Session Auth — một môn phái lâu đời, đơn giản, hiệu quả.Nhưng rồi, khi thế giới SPA (Single Page Application) và API trỗi dậy, một môn phái mới xuất hiện: JWT Auth — gọn gàng, […]","\n\u003Ch2 class=\"wp-block-heading\">I. Bôn tẩu giang hồ\u003C\u002Fh2>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Từ thuở giang hồ còn sơ khai, các ứng dụng web cổ điển sử dụng \u003Cstrong>Session Auth\u003C\u002Fstrong> — một môn phái lâu đời, đơn giản, hiệu quả.\u003Cbr \u002F>Nhưng rồi, khi thế giới SPA (Single Page Application) và API trỗi dậy, một môn phái mới xuất hiện: \u003Cstrong>JWT Auth\u003C\u002Fstrong> — gọn gàng, tự do, hành tẩu khắp thiên hạ không cần server nhớ mặt.\u003C\u002Fp>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Hai phái tuy khác đường, nhưng đều hướng tới một mục tiêu: \u003Cstrong>xác thực danh tính người dùng\u003C\u002Fstrong>.\u003Cbr \u002F>Vậy ai là cao thủ đệ nhất thiên hạ? Hãy cùng ta luận một hồi!\u003C\u002Fp>\n\n\n\n\u003Chr class=\"wp-block-separator has-alpha-channel-opacity\" \u002F>\n\n\n\n\u003Ch2 class=\"wp-block-heading\">II. \u003Cstrong>Tuyệt kỷ của từng môn phái\u003C\u002Fstrong>\u003C\u002Fh2>\n\n\n\n\u003Ch3 class=\"wp-block-heading\">Phái Session Auth – “Truyền thống chính tông”\u003C\u002Fh3>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">\u003Cstrong>Nguyên lý:\u003C\u002Fstrong>\u003Cbr \u002F>Khi người dùng đăng nhập, server tạo một “session” lưu trong bộ nhớ hoặc database.\u003Cbr \u002F>Một “token bí mật” (session ID) được gửi về trình duyệt, lưu trong \u003Cstrong>cookie\u003C\u002Fstrong>.\u003Cbr \u002F>Từ đó, mỗi lần người dùng gửi request, cookie ấy giúp server nhận ra họ.\u003C\u002Fp>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">\u003Cstrong>Vũ khí bí truyền:\u003C\u002Fstrong>\u003C\u002Fp>\n\n\n\n\u003Cul class=\"wp-block-list\">\n\u003Cli>\u003Ccode>php artisan make:auth\u003C\u002Fcode> – thần công tự động hoá.\u003C\u002Fli>\n\n\n\n\u003Cli>\u003Ccode>Illuminate\\Session\u003C\u002Fcode> – nội công thâm hậu.\u003C\u002Fli>\n\n\n\n\u003Cli>\u003Ccode>csrf_token()\u003C\u002Fcode> – hộ thân pháp tránh bị tấn công CSRF.\u003C\u002Fli>\n\u003C\u002Ful>\n\n\n\n\u003Chr class=\"wp-block-separator has-alpha-channel-opacity\" \u002F>\n\n\n\n\u003Ch3 class=\"wp-block-heading\">Phái JWT Auth – “Hiệp khách giang hồ tự do”\u003C\u002Fh3>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">\u003Cstrong>Nguyên lý:\u003C\u002Fstrong>\u003Cbr \u002F>Khi người dùng đăng nhập, server trả về một \u003Cstrong>JWT (JSON Web Token)\u003C\u002Fstrong> – chứa thông tin mã hoá (payload).\u003Cbr \u002F>Token này đi theo mọi request (thường nằm trong header \u003Ccode>Authorization: Bearer &lt;token&gt;\u003C\u002Fcode>).\u003Cbr \u002F>Server không cần lưu gì cả – chỉ cần \u003Cstrong>xác minh chữ ký\u003C\u002Fstrong> là biết thật giả.\u003C\u002Fp>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">\u003Cstrong>Vũ khí bí truyền:\u003C\u002Fstrong>\u003C\u002Fp>\n\n\n\n\u003Cul class=\"wp-block-list\">\n\u003Cli>\u003Ccode>tymon\u002Fjwt-auth\u003C\u002Fcode> – bí kíp phổ biến trong Laravel.\u003C\u002Fli>\n\n\n\n\u003Cli>\u003Ccode>firebase\u002Fphp-jwt\u003C\u002Fcode> – bảo vật do tiền nhân Google để lại.\u003C\u002Fli>\n\n\n\n\u003Cli>Header \u003Ccode>Authorization\u003C\u002Fcode> – như lệnh bài của triều đình, đi đến đâu cũng có hiệu lực.\u003C\u002Fli>\n\u003C\u002Ful>\n\n\n\n\u003Chr class=\"wp-block-separator has-alpha-channel-opacity\" \u002F>\n\n\n\n\u003Ch2 class=\"wp-block-heading\">III. \u003Cstrong>So sánh chiêu thức\u003C\u002Fstrong>\u003C\u002Fh2>\n\n\n\n\u003Cfigure class=\"wp-block-table\">\u003Ctable class=\"has-fixed-layout\">\u003Cthead>\u003Ctr>\u003Cth>Đặc điểm\u003C\u002Fth>\u003Cth>\u003Cstrong>Session Auth\u003C\u002Fstrong>\u003C\u002Fth>\u003Cth>\u003Cstrong>JWT Auth\u003C\u002Fstrong>\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd>\u003Cstrong>Lưu trữ\u003C\u002Fstrong>\u003C\u002Ftd>\u003Ctd>Trên server (session store, Redis, DB…)\u003C\u002Ftd>\u003Ctd>Trên client (localStorage, cookie, memory…)\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cstrong>Trạng thái (state)\u003C\u002Fstrong>\u003C\u002Ftd>\u003Ctd>Có trạng thái (stateful)\u003C\u002Ftd>\u003Ctd>Không trạng thái (stateless)\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cstrong>Phù hợp cho\u003C\u002Fstrong>\u003C\u002Ftd>\u003Ctd>Web truyền thống (Blade, Livewire…)\u003C\u002Ftd>\u003Ctd>SPA, Mobile app, API đa nền tảng\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cstrong>Tốc độ\u003C\u002Fstrong>\u003C\u002Ftd>\u003Ctd>Cần truy xuất session mỗi lần\u003C\u002Ftd>\u003Ctd>Nhanh hơn vì không truy DB\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cstrong>Bảo mật\u003C\u002Fstrong>\u003C\u002Ftd>\u003Ctd>Tốt với cookie + HTTPS\u003C\u002Ftd>\u003Ctd>Dễ lộ token nếu không cẩn thận\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cstrong>Gia hạn phiên (refresh)\u003C\u002Fstrong>\u003C\u002Ftd>\u003Ctd>Tự động qua cookie\u003C\u002Ftd>\u003Ctd>Cần cơ chế refresh token thủ công\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cstrong>Logout\u003C\u002Fstrong>\u003C\u002Ftd>\u003Ctd>Dễ – chỉ xoá session\u003C\u002Ftd>\u003Ctd>Phức tạp – phải vô hiệu hóa token\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cstrong>Triển khai\u003C\u002Fstrong>\u003C\u002Ftd>\u003Ctd>Dễ, Laravel hỗ trợ sẵn\u003C\u002Ftd>\u003Ctd>Cần setup thêm package và cấu hình\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>\u003Cstrong>Kiểm soát người dùng online\u003C\u002Fstrong>\u003C\u002Ftd>\u003Ctd>Dễ (dựa vào session table)\u003C\u002Ftd>\u003Ctd>Khó hơn – token không lưu trạng thái\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Ffigure>\n\n\n\n\u003Ch2 class=\"wp-block-heading\">IV. \u003Cstrong>Khi nào nên dùng?\u003C\u002Fstrong>\u003C\u002Fh2>\n\n\n\n\u003Ch3 class=\"wp-block-heading\">\u003Cstrong>Session Auth – Dành cho đệ tử nội môn\u003C\u002Fstrong>\u003C\u002Fh3>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Dùng khi:\u003C\u002Fp>\n\n\n\n\u003Cul class=\"wp-block-list\">\n\u003Cli>Ứng dụng chủ yếu là \u003Cstrong>web truyền thống\u003C\u002Fstrong> (Laravel Blade, Inertia, Livewire).\u003C\u002Fli>\n\n\n\n\u003Cli>Hệ thống cần quản lý phiên đăng nhập chặt chẽ, ví dụ \u003Cstrong>admin panel, cổng nội bộ\u003C\u002Fstrong>.\u003C\u002Fli>\n\n\n\n\u003Cli>Muốn tận dụng bảo mật cookie và CSRF protection sẵn có của Laravel.\u003C\u002Fli>\n\u003C\u002Ful>\n\n\n\n\u003Cblockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n\u003Cp class=\"wp-block-paragraph\">🧙 “Muốn an định giang sơn, cứ trung thành với Session Auth.”\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\n\n\n\u003Chr class=\"wp-block-separator has-alpha-channel-opacity\" \u002F>\n\n\n\n\u003Ch3 class=\"wp-block-heading\">\u003Cstrong>JWT Auth – Dành cho hiệp khách phiêu bạt\u003C\u002Fstrong>\u003C\u002Fh3>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Dùng khi:\u003C\u002Fp>\n\n\n\n\u003Cul class=\"wp-block-list\">\n\u003Cli>Xây dựng \u003Cstrong>API\u003C\u002Fstrong> cho mobile, SPA, microservices.\u003C\u002Fli>\n\n\n\n\u003Cli>Cần xác thực \u003Cstrong>không phụ thuộc server\u003C\u002Fstrong>.\u003C\u002Fli>\n\n\n\n\u003Cli>Muốn người dùng đăng nhập 1 lần – dùng mọi nơi (SSO, đa nền tảng).\u003C\u002Fli>\n\u003C\u002Ful>\n\n\n\n\u003Cblockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n\u003Cp class=\"wp-block-paragraph\">🥷 “Đi khắp thiên hạ, mang theo JWT là đủ — chỉ cần chữ ký hợp lệ.”\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\n\n\n\u003Chr class=\"wp-block-separator has-alpha-channel-opacity\" \u002F>\n\n\n\n\u003Ch2 class=\"wp-block-heading\">V. \u003Cstrong>Tổng kết giang hồ\u003C\u002Fstrong>\u003C\u002Fh2>\n\n\n\n\u003Cfigure class=\"wp-block-table\">\u003Ctable class=\"has-fixed-layout\">\u003Cthead>\u003Ctr>\u003Cth>Tình huống\u003C\u002Fth>\u003Cth>Môn phái khuyên dùng\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd>Web nội bộ, quản lý user, admin\u003C\u002Ftd>\u003Ctd>Session Auth\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Ứng dụng mobile, React\u002FVue SPA\u003C\u002Ftd>\u003Ctd>JWT Auth\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>API kết nối nhiều dịch vụ\u003C\u002Ftd>\u003Ctd>JWT Auth\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Muốn bảo mật cookie và CSRF sẵn có\u003C\u002Ftd>\u003Ctd>Session Auth\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Ffigure>\n","published","vdhoangson@gmail.com","2e00d396-6843-4625-87a1-560bb59ede80",{"id":32,"wordpressId":34,"filename":35,"storageKey":36,"sourceUrl":37,"mimeType":38,"altText":39,"caption":40,"width":41,"height":42,"createdAt":43,"updatedAt":44,"url":45},16368,"session-auth-vs-jwt-auth.png","wordpress\u002F2025\u002F11\u002Fsession-auth-vs-jwt-auth.png","https:\u002F\u002Fvdhoangson.com\u002Fwp-content\u002Fuploads\u002F2025\u002F11\u002Fsession-auth-vs-jwt-auth.png","image\u002Fpng","session-auth-vs-jwt-auth",null,1536,1024,"2025-11-08T08:34:10.000Z","2026-10-15T04:59:31.204Z","\u002Fuploads\u002Fwordpress\u002F2025\u002F11\u002Fsession-auth-vs-jwt-auth.png",[47],{"id":48,"wordpressId":49,"name":50,"slug":51,"parentId":52},"56268c91-7b68-4ce5-9576-25ed0595bbac",20,"PHP","php","f6aff5ed-b85e-45e6-bbdb-08788be09d67",[54,59,63,68,72],{"id":55,"wordpressId":56,"name":57,"slug":58},"f5078e23-3620-49f8-9a73-9d1581ff52a9",323,"xác thực","xac-thuc",{"id":60,"wordpressId":61,"name":62,"slug":62},"fd1e9a51-9b19-4f4b-9ce9-11c160986ba3",325,"cookie",{"id":64,"wordpressId":65,"name":66,"slug":67},"236197c7-fa55-4d64-ba54-add3201ffcbb",322,"jwt auth","jwt-auth",{"id":69,"wordpressId":70,"name":71,"slug":71},"8b36a009-aacd-4d34-8bec-9aab90d3593a",324,"session",{"id":73,"wordpressId":74,"name":75,"slug":76},"2c66d2ac-1302-420b-b539-9650f8c32355",321,"session auth","session-auth","2025-11-08T08:37:12.000Z","2025-11-08T08:37:14.000Z",{"id":80,"wordpressId":81,"title":82,"slug":83,"excerpt":84,"contentHtml":85,"status":30,"authorName":31,"seoTitle":82,"seoDescription":84,"featuredMediaId":86,"featuredMedia":87,"categories":96,"tags":98,"publishedAt":122,"createdAt":122,"updatedAt":123},"18a01359-e7c1-493e-8874-395c9f637ef4",1991,"Filament đã chạy “native” trên Android!","filament-da-chay-native-tren-android","Filament – bộ admin panel bóng bẩy, mạnh mẽ mà bạn từng dùng trong trình duyệt – giờ đã chạy ngon lành trong app Android thật sự, offline không cần mạng, và tất nhiên là powered by… Laravel + PHP! 👊 Cộng đồng Laravel quá bá đạo Từ khi ra mắt NativePHP for Mobile, hàng […]","\n\u003Cp class=\"wp-block-paragraph\">\u003Cstrong>Filament\u003C\u002Fstrong> – bộ admin panel bóng bẩy, mạnh mẽ mà bạn từng dùng trong trình duyệt – giờ \u003Cstrong>đã chạy ngon lành trong app Android thật sự\u003C\u002Fstrong>, offline không cần mạng, và tất nhiên là powered by… Laravel + PHP!\u003C\u002Fp>\n\n\n\n\u003Ch2 class=\"wp-block-heading\">👊 Cộng đồng Laravel quá bá đạo\u003C\u002Fh2>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Từ khi ra mắt \u003Cstrong>NativePHP for Mobile\u003C\u002Fstrong>, hàng ngàn dev Laravel đã đứng lên nói:\u003C\u002Fp>\n\n\n\n\u003Cblockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n\u003Cp class=\"wp-block-paragraph\">“Tôi muốn làm app native bằng chính ngôn ngữ lập trình tôi đã biết!”\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Và nhờ đó:\u003C\u002Fp>\n\n\n\n\u003Cul class=\"wp-block-list\">\n\u003Cli>✅ Hỗ trợ Android (sau iOS)\u003C\u002Fli>\n\n\n\n\u003Cli>✅ Có hot reload (khỏi rebuild mỗi lần sửa)\u003C\u002Fli>\n\n\n\n\u003Cli>✅ Đang làm OTA update, phân phối build, Zephpyr v.v.\u003C\u002Fli>\n\u003C\u002Ful>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Đặc biệt: đã xử lý xong cục xương khó nhất – \u003Cstrong>hỗ trợ intl extension\u003C\u002Fstrong> (mấu chốt để format số, tiền, ngày… đúng chuẩn quốc tế).\u003C\u002Fp>\n\n\n\n\u003Chr class=\"wp-block-separator has-alpha-channel-opacity\" \u002F>\n\n\n\n\u003Ch2 class=\"wp-block-heading\">🧠 Thách thức intl trên Android\u003C\u002Fh2>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Bình thường \u003Ccode>intl\u003C\u002Fcode> chạy phía server. Nhưng đưa nó vào Android? Hơi bị khoai!\u003C\u002Fp>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Phải:\u003C\u002Fp>\n\n\n\n\u003Cul class=\"wp-block-list\">\n\u003Cli>Build lại ICU (bộ xử lý định dạng quốc tế)\u003C\u002Fli>\n\n\n\n\u003Cli>Tùy chỉnh để tương thích với Android\u003C\u002Fli>\n\n\n\n\u003Cli>Test, fail, debug liên tục\u003C\u002Fli>\n\u003C\u002Ful>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Nhưng giờ… \u003Cstrong>nó hoạt động mượt như mơ\u003C\u002Fstrong>.\u003C\u002Fp>\n\n\n\n\u003Chr class=\"wp-block-separator has-alpha-channel-opacity\" \u002F>\n\n\n\n\u003Ch2 class=\"wp-block-heading\">🎁 Đổi lại 30MB là trải nghiệm xịn xò\u003C\u002Fh2>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Chấp nhận tăng ~30MB app size, bạn có được:\u003C\u002Fp>\n\n\n\n\u003Cul class=\"wp-block-list\">\n\u003Cli>🌍 Format số, tiền, ngày đúng locale\u003C\u002Fli>\n\n\n\n\u003Cli>⚙️ Dùng mọi component phức tạp của Filament\u003C\u002Fli>\n\n\n\n\u003Cli>📦 Tương thích nhiều package Laravel hơn\u003C\u002Fli>\n\n\n\n\u003Cli>🚫 Và không cần server! Offline 100%\u003C\u002Fli>\n\u003C\u002Ful>\n\n\n\n\u003Chr class=\"wp-block-separator has-alpha-channel-opacity\" \u002F>\n\n\n\n\u003Ch2 class=\"wp-block-heading\">🔮 Tiếp theo: iOS &amp; nhiều điều thú vị\u003C\u002Fh2>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Team đang:\u003C\u002Fp>\n\n\n\n\u003Cul class=\"wp-block-list\">\n\u003Cli>Xây \u003Cstrong>Zephpyr\u003C\u002Fstrong> – hệ thống build và phân phối\u003C\u002Fli>\n\n\n\n\u003Cli>Tối ưu app nhẹ hơn nếu không cần intl\u003C\u002Fli>\n\n\n\n\u003Cli>Mở rộng hỗ trợ package Laravel\u003C\u002Fli>\n\n\n\n\u003Cli>Tăng cường CLI cho quản lý thiết bị\u003C\u002Fli>\n\u003C\u002Ful>\n\n\n\n\u003Chr class=\"wp-block-separator has-alpha-channel-opacity\" \u002F>\n\n\n\n\u003Ch2 class=\"wp-block-heading\">🧡 Laravel không chỉ là web nữa!\u003C\u002Fh2>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Filament chạy native là cột mốc lịch sử.\u003Cbr \u002F>Laravel dev giờ không chỉ là web dev.\u003Cbr \u002F>Bạn có thể làm app mobile “xịn” mà không rời PHP!\u003C\u002Fp>\n\n\n\n\u003Cp class=\"wp-block-paragraph\">Cộng đồng chính là điều làm nên kỳ tích này.\u003Cbr \u002F>Giờ thì… \u003Cstrong>hãy đi tạo nên điều tuyệt vời tiếp theo!\u003C\u002Fstrong> 💪\u003C\u002Fp>\n","2c992a70-8162-4353-89e6-31b44bdb3053",{"id":86,"wordpressId":88,"filename":89,"storageKey":90,"sourceUrl":91,"mimeType":38,"altText":9,"caption":40,"width":92,"height":93,"createdAt":94,"updatedAt":44,"url":95},1992,"nativephp-filament2.png","wordpress\u002F2025\u002F06\u002Fnativephp-filament2.png","https:\u002F\u002Fvdhoangson.com\u002Fwp-content\u002Fuploads\u002F2025\u002F06\u002Fnativephp-filament2.png",2200,1100,"2025-06-24T08:25:13.000Z","\u002Fuploads\u002Fwordpress\u002F2025\u002F06\u002Fnativephp-filament2.png",[97],{"id":48,"wordpressId":49,"name":50,"slug":51,"parentId":52},[99,103,108,112,117],{"id":100,"wordpressId":101,"name":102,"slug":102},"585133be-eb4e-4805-81e9-edda1bd562c1",27,"android",{"id":104,"wordpressId":105,"name":106,"slug":107},"643e8211-d57f-481e-ad4e-1aa939a3fc04",25,"Filament","filament",{"id":109,"wordpressId":110,"name":111,"slug":111},"35b4e0f9-6caf-49f1-a08e-c5830e6d6f6d",11,"laravel",{"id":113,"wordpressId":114,"name":115,"slug":116},"6b3222d8-768d-42ba-bceb-01ce9089a659",26,"native app","native-app",{"id":118,"wordpressId":119,"name":120,"slug":121},"ff9083f3-ab51-42d0-b566-fd848819ee05",28,"NativePHP","nativephp","2025-06-24T08:27:38.000Z","2025-06-24T08:27:40.000Z",2,1,12]