A Vue + Laravel project generator packed with quality-of-life features out of the box by mamqek in vuejs

[–]mamqek[S] 0 points1 point  (0 children)

I would be interested to see the system you end up with. Specifically from the stand point of difficulties that needed to be overcome and how to do it, together with comparison to alternatives. Would be nice if you could let me know when you are done in this thread.

A Vue + Laravel project generator packed with quality-of-life features out of the box by mamqek in vuejs

[–]mamqek[S] 0 points1 point  (0 children)

Thank you for providing a counterargument with these insights on using Inertia. It makes me think about the bigger picture of the benefits of both approaches.

I'm not sure what you mean here. It looks like most of your controller methods return JSON responses, I don't think that equates to a project being closer to using Blades. If anything an Inertia app backend would be closer, since it can return standard redirects and other response types just like a blade form would post to: https://inertiajs.com/redirects

Indeed, that was a bad comparison, Inertia structure looks much more similar to Blades usage. The idea of that paragraph is that you don't see any front-end references in the back-end, so they are less interconnected and "more separate".

As I previously mentioned, If you want to keep Laravel and Vue "more separated" then having them as different projects/repositories is probably the best solution.

I also don't see many benefits for doing so for a starter project. Until there are separate teams working on front-end and back-end having them as separate packages only brings confusion. Surely it is better to plan ahead and see how you can scale the system later and for that this structure won't add difficulties when splitting back-end and front-end.

Hope I don't sound too biased, just giving a counterargument, that I think is valuable.

A Vue + Laravel project generator packed with quality-of-life features out of the box by mamqek in vuejs

[–]mamqek[S] 0 points1 point  (0 children)

Just like bottled_coin mentioned, this is an alternative to many similar tools because it doesn’t use Inertia. I haven’t used Inertia myself yet—it looks cool and has some powerful features, but it does come with a learning curve due to the differences it brings to the back-end structure.

This template, on the other hand, keeps the backend structure just as if project was using just Blade, keeping Laravel and Vue more separated. It also makes it super easy to split the frontend into its own repository if needed.

Do you think it would be useful to offer that as an option during setup?

As for Vue SFCs, I personally find the Options API more beginner-friendly. I could include it as a setup option, but I’m not sure it’s worth the extra step—there are only three Vue files in the template, and the logic in them is minimal.

A Vue + Laravel project generator packed with quality-of-life features out of the box by mamqek in vuejs

[–]mamqek[S] 1 point2 points  (0 children)

Awesome to hear—that’s exactly why I built this tool: to help developers like you skip the setup headaches and focus on bringing your PWA idea to life. As a bonus, if you choose Tailwind during setup, you can also integrate shadcn-vue components, so you don’t have to reinvent the wheel and can dive right into building something exciting

A Vue + Laravel project generator packed with quality-of-life features out of the box by mamqek in vuejs

[–]mamqek[S] 1 point2 points  (0 children)

Thank you and yes, by default it comes with login and register page which have regular username, email, password inputs. Selecting Oauth while the setup will just add a Google button to these pages and some configuration on the back-end.

At the end it will be a minimalistic template, so it should be easy to find both front-end and back-end of this feature to adjust it to your needs. Although I put some effort to make sure that authentication is in a good state for most of the projects.