[{"data":1,"prerenderedAt":186},["ShallowReactive",2],{"i-mdi:github":3,"i-mdi:linkedin":8,"i-mdi:instagram":10,"project-clandys":12,"i-solar:link-linear":171,"i-lineicons:laravel":173,"i-lineicons:javascript":175,"i-lineicons:mysql":177,"i-solar:arrow-left-linear":179,"i-solar:pen-2-linear":181,"i-lineicons:bootstrap":183},{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":7},0,24,false,"\u003Cpath fill=\"currentColor\" d=\"M12 2A10 10 0 0 0 2 12c0 4.42 2.87 8.17 6.84 9.5c.5.08.66-.23.66-.5v-1.69c-2.77.6-3.36-1.34-3.36-1.34c-.46-1.16-1.11-1.47-1.11-1.47c-.91-.62.07-.6.07-.6c1 .07 1.53 1.03 1.53 1.03c.87 1.52 2.34 1.07 2.91.83c.09-.65.35-1.09.63-1.34c-2.22-.25-4.55-1.11-4.55-4.92c0-1.11.38-2 1.03-2.71c-.1-.25-.45-1.29.1-2.64c0 0 .84-.27 2.75 1.02c.79-.22 1.65-.33 2.5-.33s1.71.11 2.5.33c1.91-1.29 2.75-1.02 2.75-1.02c.55 1.35.2 2.39.1 2.64c.65.71 1.03 1.6 1.03 2.71c0 3.82-2.34 4.66-4.57 4.91c.36.31.69.92.69 1.85V21c0 .27.16.59.67.5C19.14 20.16 22 16.42 22 12A10 10 0 0 0 12 2\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":9},"\u003Cpath fill=\"currentColor\" d=\"M19 3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2zm-.5 15.5v-5.3a3.26 3.26 0 0 0-3.26-3.26c-.85 0-1.84.52-2.32 1.3v-1.11h-2.79v8.37h2.79v-4.93c0-.77.62-1.4 1.39-1.4a1.4 1.4 0 0 1 1.4 1.4v4.93zM6.88 8.56a1.68 1.68 0 0 0 1.68-1.68c0-.93-.75-1.69-1.68-1.69a1.69 1.69 0 0 0-1.69 1.69c0 .93.76 1.68 1.69 1.68m1.39 9.94v-8.37H5.5v8.37z\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":11},"\u003Cpath fill=\"currentColor\" d=\"M7.8 2h8.4C19.4 2 22 4.6 22 7.8v8.4a5.8 5.8 0 0 1-5.8 5.8H7.8C4.6 22 2 19.4 2 16.2V7.8A5.8 5.8 0 0 1 7.8 2m-.2 2A3.6 3.6 0 0 0 4 7.6v8.8C4 18.39 5.61 20 7.6 20h8.8a3.6 3.6 0 0 0 3.6-3.6V7.6C20 5.61 18.39 4 16.4 4zm9.65 1.5a1.25 1.25 0 0 1 1.25 1.25A1.25 1.25 0 0 1 17.25 8A1.25 1.25 0 0 1 16 6.75a1.25 1.25 0 0 1 1.25-1.25M12 7a5 5 0 0 1 5 5a5 5 0 0 1-5 5a5 5 0 0 1-5-5a5 5 0 0 1 5-5m0 2a3 3 0 0 0-3 3a3 3 0 0 0 3 3a3 3 0 0 0 3-3a3 3 0 0 0-3-3\"\u002F>",{"id":13,"title":14,"active":6,"body":15,"collaborators":148,"color":151,"date":152,"description":153,"extension":154,"github_url":152,"icon":155,"image":156,"meta":157,"month":158,"navigation":159,"path":160,"seo":161,"sitemap":162,"stacks":163,"status":152,"stem":168,"url":169,"__hash__":170},"project\u002Fproject\u002F10.clandys.md","Clandys Grosir",{"type":16,"value":17,"toc":139},"minimark",[18,23,27,31,66,70,102,106,132,136],[19,20,22],"h2",{"id":21},"project-overview","Project Overview",[24,25,26],"p",{},"Clandys Back-Office is my first major project, focused on transforming and modernizing an existing business management system. The primary goal was to migrate from the legacy \"Voyager Laravel\" admin panel to a more maintainable and scalable application built on the latest version of Laravel.",[19,28,30],{"id":29},"pain-points-addressed","Pain Points Addressed",[32,33,34,42,48,54,60],"ul",{},[35,36,37,41],"li",{},[38,39,40],"strong",{},"Legacy Codebase:"," The original system was built on outdated Laravel and Voyager versions, making updates and maintenance difficult.",[35,43,44,47],{},[38,45,46],{},"Limited Customization:"," Voyager's structure restricted flexibility for custom features and integrations.",[35,49,50,53],{},[38,51,52],{},"Security Concerns:"," Older dependencies posed security risks and lacked support for modern authentication and authorization.",[35,55,56,59],{},[38,57,58],{},"Performance Issues:"," The legacy stack suffered from slow response times and inefficient database queries.",[35,61,62,65],{},[38,63,64],{},"Developer Experience:"," The codebase was hard to understand and extend, slowing down development.",[19,67,69],{"id":68},"solutions-implemented","Solutions Implemented",[32,71,72,78,84,90,96],{},[35,73,74,77],{},[38,75,76],{},"Full Migration to Latest Laravel:"," Rebuilt the application using the latest Laravel version, ensuring long-term support and access to new features.",[35,79,80,83],{},[38,81,82],{},"Custom Admin Panel:"," Developed a tailored admin interface, removing Voyager's limitations and enabling full control over business logic.",[35,85,86,89],{},[38,87,88],{},"Modern Authentication:"," Integrated Laravel's built-in authentication and authorization for improved security.",[35,91,92,95],{},[38,93,94],{},"Optimized Database:"," Refactored queries and structures for better performance and scalability.",[35,97,98,101],{},[38,99,100],{},"Clean Code Practices:"," Adopted modern coding standards and best practices for easier maintenance and onboarding.",[19,103,105],{"id":104},"technology-stack","Technology Stack",[32,107,108,114,120,126],{},[35,109,110,113],{},[38,111,112],{},"Laravel:"," The core PHP framework powering the backend, chosen for its robustness, security, and active community.",[35,115,116,119],{},[38,117,118],{},"JavaScript:"," Used for dynamic frontend interactions and enhancing user experience.",[35,121,122,125],{},[38,123,124],{},"Bootstrap:"," Provides responsive and consistent UI components, speeding up frontend development.",[35,127,128,131],{},[38,129,130],{},"MySQL:"," Reliable and scalable relational database for storing business data.",[19,133,135],{"id":134},"conclusion","Conclusion",[24,137,138],{},"Migrating Clandys Back-Office from Voyager Laravel to a modern Laravel stack has resulted in a more maintainable, secure, and efficient system. This project not only improved business operations but also provided valuable experience in handling real-world software migrations and adopting best practices.",{"title":140,"searchDepth":141,"depth":141,"links":142},"",2,[143,144,145,146,147],{"id":21,"depth":141,"text":22},{"id":29,"depth":141,"text":30},{"id":68,"depth":141,"text":69},{"id":104,"depth":141,"text":105},{"id":134,"depth":141,"text":135},[149,150],"daewu14","ilhamhp-kaj","#ffffff",null,"Clandys is a back-office management system designed to streamline operations and improve efficiency in business processes.","md","simple-icons:laravel","\u002Fimages\u002Fproject\u002Fclandys.webp",{},"2020-09",true,"\u002Fproject\u002Fclandys",{"title":14,"description":153},{"loc":160},[164,165,166,167],"laravel","javascript","bootstrap","mysql","project\u002F10.clandys","https:\u002F\u002Fclandystore.com","OPRLAD6P2hAP7VqLzo8ZzwWdL4cxyg7PGxLqQeiFp7E",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":172},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-width=\"1.5\">\u003Cpath d=\"M10.046 14c-1.506-1.512-1.37-4.1.303-5.779l4.848-4.866c1.673-1.68 4.25-1.816 5.757-.305s1.37 4.1-.303 5.78l-2.424 2.433\"\u002F>\u003Cpath d=\"M13.954 10c1.506 1.512 1.37 4.1-.303 5.779l-2.424 2.433l-2.424 2.433c-1.673 1.68-4.25 1.816-5.757.305s-1.37-4.1.303-5.78l2.424-2.433\"\u002F>\u003C\u002Fg>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":174},"\u003Cpath fill=\"currentColor\" d=\"m21.705 6.556l-.02-.044l-.02-.052c-.012-.02-.024-.032-.04-.052q-.012-.022-.036-.044c-.008-.008-.02-.016-.044-.036a.2.2 0 0 0-.044-.032l-3.715-2.14a.45.45 0 0 0-.428 0L13.64 6.3s-.024.016-.048.036l-.036.028l-.044.056l-.024.036s-.02.036-.032.068l-.012.032q-.014.059-.016.112v3.995l-2.855 1.643V4.564c0-.036 0-.076-.012-.108a.3.3 0 0 0-.02-.048a.3.3 0 0 0-.024-.052c-.008-.02-.02-.032-.036-.052a.3.3 0 0 0-.036-.044c-.008-.008-.02-.016-.044-.036c-.012-.008-.024-.02-.04-.028l-3.72-2.139a.43.43 0 0 0-.428 0L2.498 4.192s-.032.024-.052.044l-.04.028s-.02.028-.04.052l-.024.036s-.02.044-.028.068l-.016.036c-.008.036-.016.072-.016.112v12.725c0 .072.02.148.06.212c.036.068.092.12.156.16l7.434 4.279l.064.028l.036.012q.053.014.112.016q.054-.002.108-.016l.036-.012q.037-.01.068-.032l7.434-4.275a.44.44 0 0 0 .212-.372v-3.995l3.5-2.015a.43.43 0 0 0 .16-.156a.46.46 0 0 0 .055-.216V6.668c0-.036 0-.072-.012-.112m-4.13 1.755l-2.856-1.643l2.855-1.64l2.856 1.64zM6.428 2.925L9.28 4.568L6.43 6.212L3.573 4.568zm3.283 2.383v7.494l-1.735 1l-1.12.644v-7.49zm0 15.516l-6.57-3.783V5.308l2.855 1.648v8.234l.008.056q.001.025.008.056c.004.016.012.028.02.052q.012.03.024.048a.4.4 0 0 0 .036.056l.032.036s.02.02.048.04l3.54 2.007zm.432-4.027l-2.851-1.611l6.566-3.78l2.852 1.644zm6.998.244l-6.57 3.787v-3.287l6.57-3.75zm0-4.735l-2.855-1.643V7.412l2.855 1.643zm3.716-1.643l-2.856 1.643v-3.25l2.856-1.644z\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":176},"\u003Cpath fill=\"currentColor\" d=\"M3 3v18h18V3zm9.813 14.023c0 1.77-1.045 2.584-2.555 2.584c-1.335 0-2.12-.697-2.526-1.568l1.394-.871c.232.493.493.87 1.103.87c.58 0 .9-.203.9-1.073v-5.69h1.684zm4.006 2.584c-1.567 0-2.583-.784-3.106-1.713l1.394-.813c.377.58.87 1.016 1.683 1.016c.697 0 1.133-.32 1.133-.871c0-.58-.436-.784-1.22-1.133l-.406-.174c-1.22-.493-2.033-1.19-2.033-2.584c0-1.277.93-2.206 2.468-2.206c1.075 0 1.83.378 2.38 1.364l-1.305.871c-.29-.493-.581-.725-1.104-.725c-.493 0-.813.32-.813.726c0 .493.32.696 1.017 1.016l.406.174c1.422.61 2.264 1.22 2.264 2.67c.03 1.54-1.16 2.381-2.758 2.381\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":178},"\u003Cpath fill=\"currentColor\" fill-rule=\"evenodd\" d=\"M20.422 17.337c-1.088-.03-1.932.081-2.64.379c-.203.082-.53.082-.557.338c.11.108.122.284.218.433c.163.27.449.635.707.824l.87.622c.531.325 1.13.514 1.647.838c.299.19.598.433.898.636c.152.108.244.284.435.352v-.041c-.095-.122-.123-.297-.217-.433l-.409-.392a6.4 6.4 0 0 0-1.415-1.365c-.435-.298-1.387-.703-1.564-1.203l-.027-.03c.299-.03.653-.136.939-.217c.463-.121.884-.095 1.36-.216l.653-.19v-.12c-.245-.244-.422-.569-.68-.798a18 18 0 0 0-2.245-1.663c-.422-.27-.966-.447-1.415-.676c-.164-.081-.435-.122-.53-.257c-.246-.297-.381-.69-.558-1.041l-1.116-2.353c-.245-.527-.395-1.054-.694-1.54c-1.4-2.3-2.925-3.692-5.265-5.058c-.503-.284-1.101-.406-1.738-.554l-1.02-.055c-.218-.094-.436-.351-.626-.473c-.775-.487-2.775-1.541-3.347-.151c-.368.878.544 1.743.854 2.19c.231.31.53.662.694 1.014c.091.23.122.473.217.716c.218.595.422 1.258.708 1.812c.152.284.312.582.503.839c.109.151.3.216.34.46c-.19.27-.204.675-.313 1.014c-.49 1.528-.3 3.42.395 4.545c.218.338.731 1.082 1.428.798c.613-.244.476-1.014.653-1.69c.041-.162.014-.27.095-.379v.03l.558 1.123c.422.662 1.157 1.352 1.769 1.812c.326.243.584.662.992.81v-.04h-.026c-.082-.121-.205-.176-.314-.27a6.6 6.6 0 0 1-.707-.812a17.4 17.4 0 0 1-1.523-2.46c-.218-.42-.409-.879-.585-1.298c-.083-.162-.083-.406-.218-.487c-.205.297-.503.555-.654.92c-.258.58-.285 1.297-.38 2.041c-.055.014-.03 0-.055.03c-.435-.107-.585-.554-.748-.932c-.408-.96-.476-2.501-.123-3.61c.096-.284.504-1.177.341-1.447c-.082-.257-.354-.405-.504-.608a5.5 5.5 0 0 1-.49-.865c-.325-.758-.489-1.596-.843-2.353c-.163-.352-.449-.717-.68-1.041c-.259-.365-.544-.622-.748-1.055c-.068-.151-.163-.392-.054-.554c.026-.108.081-.152.19-.176c.176-.151.68.04.857.121c.503.203.925.392 1.347.676c.19.135.394.392.64.46h.285c.436.095.925.03 1.333.152c.72.23 1.374.567 1.96.933a12 12 0 0 1 4.244 4.624c.163.311.23.595.38.92c.287.662.64 1.338.926 1.987c.286.636.558 1.285.966 1.812c.204.284 1.02.433 1.387.582c.272.12.694.23.94.378c.461.284.924.609 1.359.92c.217.162.898.5.939.77zM6.548 5.588a2.2 2.2 0 0 0-.557.068v.03h.027c.109.216.3.365.435.555l.313.649l.027-.03c.19-.136.286-.352.286-.676c-.082-.095-.095-.19-.163-.284c-.082-.135-.259-.203-.368-.311\" clip-rule=\"evenodd\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":180},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\" d=\"M20 12H4m0 0l6-6m-6 6l6 6\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":182},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\">\u003Cpath stroke-linecap=\"round\" d=\"M4 22h16\"\u002F>\u003Cpath d=\"m13.888 3.663l.742-.742a3.146 3.146 0 1 1 4.449 4.45l-.742.74m-4.449-4.448s.093 1.576 1.483 2.966s2.966 1.483 2.966 1.483m-4.449-4.45L7.071 10.48c-.462.462-.693.692-.891.947a5.2 5.2 0 0 0-.599.969c-.139.291-.242.601-.449 1.22l-.875 2.626m14.08-8.13l-6.817 6.817c-.462.462-.692.692-.947.891q-.451.352-.969.599c-.291.139-.601.242-1.22.448l-2.626.876m0 0l-.641.213a.848.848 0 0 1-1.073-1.073l.213-.641m1.501 1.5l-1.5-1.5\"\u002F>\u003C\u002Fg>",{"left":4,"top":4,"width":184,"height":184,"rotate":4,"vFlip":6,"hFlip":6,"body":185,"hidden":159},64,"\u003Cpath fill=\"currentColor\" d=\"M41.4 39.7c0 5.9-5.5 5.8-6 5.8H24.1V34.2h11.2c6-.2 6.1 4.3 6.1 5.5m-6.9-10.2c.1 0 5.3.1 5.3-5.1c0-2.1-.4-4.9-5.3-4.9H24.1v10zm28.4-18.1v41.3c0 5.6-4.6 10.3-10.4 10.3h-41C5.7 63 1.1 58.4 1.1 52.6V11.4C1.1 5.6 5.7 1 11.5 1h41.3c5.5 0 10.1 4.6 10.1 10.4m-15.2 29c0-3-.8-8-6.7-9.3V31c3.2-1.4 5.1-3.9 5.1-7.6c0-1 .3-9-10.7-9H17.9v36c17.7 0 19.4.1 22.6-.7c1.9-.6 7.2-2.4 7.2-9.3\"\u002F>",1779378198264]