[{"data":1,"prerenderedAt":144},["ShallowReactive",2],{"/projects/crateos-recalls":3},{"id":4,"title":5,"additionalTags":6,"body":7,"description":113,"excerpt":114,"extension":115,"featured":116,"meta":117,"name":19,"navigation":116,"openSource":123,"path":124,"projectDate":125,"seo":126,"sitemap":127,"status":131,"stem":132,"subtitle":133,"tags":134,"thumbnail":142,"__hash__":143},"projects/projects/2.crateos-recalls.md","Crateos Recalls",[],{"type":8,"value":9,"toc":109},"minimark",[10,26,31,34,40,45,105],[11,12,13,20,21,25],"p",{},[14,15,19],"a",{"href":16,"rel":17},"https://crateos.com",[18],"nofollow","CrateOS Recalls"," is a web application that\nI started to push myself, get out of my comfort zone and learn new technologies along the way.\nTutorials and documentation are great but I feel I learn best by ",[22,23,24],"em",{},"building",".",[27,28],"problem-solution",{"problem":29,"solution":30},"The recall process is often confusing, time consuming, and parents are too busy to dedicate the time & effort.","Make the recall discovery process easier and enable tailored recall alerts on a per-company basis.",[11,32,33],{},"The result is a Solo-SaaS project and the culmination of my experience in designing and developing web applications.",[35,36],"player",{"posterDesc":37,"posterSrc":38,"src":39},"A brief walkthrough of the CrateOS Recalls app.","https://www.crateos.com/images/demo-poster.gif","https://www.crateos.com/media/crateos-recalls-promo-720.mp4",[41,42,44],"h4",{"id":43},"technologies-utilized","Technologies Utilized",[46,47,48,61],"table",{},[49,50,51],"thead",{},[52,53,54,58],"tr",{},[55,56,57],"th",{},"Frontend",[55,59,60],{},"Backend",[62,63,64,73,81,89,97],"tbody",{},[52,65,66,70],{},[67,68,69],"td",{},"Vue 3",[67,71,72],{},"ExpressJS",[52,74,75,78],{},[67,76,77],{},"Composition API",[67,79,80],{},"Loopback",[52,82,83,86],{},[67,84,85],{},"Pinia",[67,87,88],{},"PostgreSQL",[52,90,91,94],{},[67,92,93],{},"VueUse",[67,95,96],{},"ElasticSearch",[52,98,99,102],{},[67,100,101],{},"Bulma / Buefy",[67,103,104],{},"NodeJS",[106,107],"image-carousel",{":items":108},"[\"/projects/crateos/home-dark.jpg\",\"/projects/crateos/home.jpg\",\"/projects/crateos/recall.jpg\", \"/projects/crateos/recall-dark.jpg\"]",{"title":110,"searchDepth":111,"depth":111,"links":112},"",2,[],"Tailored CPSC product recalls for parents & busy people.",null,"md",true,{"url":16,"items":118},[119,120,121,122],"/projects/crateos/home-dark.jpg","/projects/crateos/home.jpg","/projects/crateos/recall.jpg","/projects/crateos/recall-dark.jpg",false,"/projects/crateos-recalls","2025-01-01T00:00:00.000Z",{"description":113},{"loc":124,"lastmod":128,"changefreq":129,"priority":130},"2025-05-18","monthly",0.8,"published","projects/2.crateos-recalls","Solo Founder + Full Stack + Design  + Branding",[135,136,137,138,139,57,60,140,141],"VueJS","Bulma","SCSS","TypeScript","Postgres","PWA","Git","/projects/crateos/thumb.webp","ub7Vj1IlE8DRDd4oU1kvD_1eLt2yddpi80dvH8bCmaY",1778072417574]