JhumanJ / OpnForm

Beautiful Open-Source Form Builder
https://opnform.com
GNU Affero General Public License v3.0
2.23k stars 297 forks source link

Migration from Vue.js SPA to Nuxt with Universal Rendering #252

Closed JhumanJ closed 10 months ago

JhumanJ commented 11 months ago

Migration of OpnForm from Vue.js SPA to Nuxt with Universal Rendering

Summary

We're looking for contributions to migrate our Vue.js Single Page Application (SPA) for OpnForm (OpnForm Repository) to a Nuxt application using universal rendering. This migration is crucial for enhancing performance, SEO, and accessibility across our projects, including NoteForms.

Key Objectives

Acceptance Criteria

Collaboration

Feel free to ask questions or request clarifications anytime.

JhumanJ commented 11 months ago

/bounty $400

algora-pbc[bot] commented 11 months ago

💎 $400 bounty created by OpnForm 🙋 If you start working on this, comment /attempt #252 to notify everyone 👉 To claim this bounty, submit a pull request that includes the text /claim #252 somewhere in its body 📝 Before proceeding, please make sure you can receive payouts in your country 💵 Payment arrives in your account 2-5 days after the bounty is rewarded 💯 You keep 100% of the bounty award 🙏 Thank you for contributing to JhumanJ/OpnForm!

Attempt Started (GMT+0) Solution
🔴 @rishi-raj-jain Dec 2, 2023, 10:16:33 AM WIP
🔴 @nhedger Dec 6, 2023, 5:40:25 PM WIP
🔴 @deoxzyKun Dec 8, 2023, 6:39:33 PM WIP
ezhil56x commented 11 months ago

@JhumanJ Can I work on this?

JhumanJ commented 11 months ago

Hey, thanks for reaching out @ezhil56x . Are you experienced with nuxt and vue? Also I discussed few hours ago about this task with @rishi-raj-jain, and he said he'd do it. Let's give me a few hours to see if it's still the case.

ezhil56x commented 11 months ago

Hey, thanks for reaching out @ezhil56x . Are you experienced with nuxt and vue? Also I discussed few hours ago about this task with @rishi-raj-jain, and he said he'd do it. Let's give me a few hours to see if it's still the case.

Yeah I can do this. Also open to collaborate with @rishi-raj-jain, if he is interested

rishi-raj-jain commented 11 months ago

/attempt #252

Options
rishi-raj-jain commented 11 months ago

@JhumanJ

Yes, I'm more than hella interested in getting this done!

rishi-raj-jain commented 11 months ago

Please assign this to me?

rishi-raj-jain commented 11 months ago

Thank you 🙏

JhumanJ commented 11 months ago

I just assigned it to you @rishi-raj-jain. Please update us on progress :) I'll let you guys discuss and see if you feel like collaborating @ezhil56x

rishi-raj-jain commented 11 months ago

Sure thing!

ezhil56x commented 11 months ago

@rishi-raj-jain Are you up for collaborating?

rishi-raj-jain commented 11 months ago

@ezhil56x

Would like to attempt this first, I've been taking on migrations recently and wanting to getting good at them.

Will definitely loop you in if require your any help!

rishi-raj-jain commented 11 months ago

I've reached out to @danielroe for his guidance if there's any integration of Laravel + Nuxt3 that can replace the things and help smoothly migrate to Nuxt3.

JhumanJ commented 11 months ago

Just took a detailed look to https://github.com/fumeapp/laranuxt, and it's a great inspiration, especially for config and folder structure!

nhedger commented 11 months ago

I would have loved to take on the challenge, but since @rishi-raj-jain is already assigned to the issue, I'll instead take the opportunity to say that my https://github.com/nhedger/nuxt-sanctum package could help with the authentication part (sanctum).

If you end up not doing it, I'd appreciate it if you let me know @rishi-raj-jain.

Good luck!

rishi-raj-jain commented 11 months ago

Hey @nhedger,

I'm in discussions with @JhumanJ on the approach we're gonna take. Currently, swinging between custom routing and default routing.

As far as I remember, per @JhumanJ we're gonna use APIs instead of integration Laravel, right @JhumanJ?

nhedger commented 11 months ago

With Sanctum you would also call your Laravel API, the only difference being that you do not need to handle tokens for authenticating the first-party frontend. You use session cookies that handle that for you, which is more convenient and more secure. Backend and frontend apps must share the same top-level domain, though.

JhumanJ commented 11 months ago

Thanks for your interest @nhedger! Sanctum is great, tbh we didn't use it this project is a fork from another project, which I created when I didn't know about Sanctum. I guess for now it's just easier to not use it (less code changes), but it could be interesting to investigate this later on

rishi-raj-jain commented 11 months ago

@ezhil56x @nhedger

Feel free to take this up, I am not able to make the existing route files + middleware without using Nuxt pages as the approach..

Here's what you can refer to in the router config of Nuxt: https://nuxt.com/docs/api/nuxt-config#router

nhedger commented 11 months ago

Is there a requirement NOT to use Nuxt pages here?

JhumanJ commented 11 months ago

There isn't, but the existing route path can't change :(

nhedger commented 11 months ago

/attempt #252

Options
rishi-raj-jain commented 11 months ago

Wohoo, all the best!

Looking forward to learning :D

viveknyx commented 11 months ago

/attempt #252

Options
algora-pbc[bot] commented 11 months ago

[!NOTE] The user @nhedger is already attempting to complete issue #252 and claim the bounty. We recommend checking in on @nhedger's progress, and potentially collaborating, before starting a new solution.

algora-pbc[bot] commented 11 months ago

@nhedger: Reminder that in 7 days the bounty will become up for grabs, so please submit a pull request before then 🙏

nhedger commented 11 months ago

I find myself unable to continue, so I've canceled my attempt.

algora-pbc[bot] commented 11 months ago

@deoxzyKun: Reminder that in 7 days the bounty will become up for grabs, so please submit a pull request before then 🙏

algora-pbc[bot] commented 10 months ago

The bounty is up for grabs! Everyone is welcome to /attempt #252 🙌

JhumanJ commented 10 months ago

We're working on this internally, so closing this!