The forms thing in particular is one thing I see come up a lot, especially as people are moving from Netlify to Vercel, which doesn't yet have a first-party forms solution.
In a way, it's just an extension of a default weakness of Jamsites to begin with: their inability to deal with dynamic user-generated content (comments, likes, etc.). The whole point of static generation is "write-rarely, read-often", and user-generated content upsets that paradigm.
If you just need a contact form, that's easy enough to outsource to another vendor/solution, because the submission doesn't necessarily have to update (your) database.
Google Forms is totally free, BTW, and can easily email you responses and/or save them to a spreadsheet: https://www.google.com/forms/about/
Where it gets tricky is you actually do want a form that updates your own database. Since you don't have a full backend, you don't have a form handler. But that's easy enough to implement with an API route (in Next, Astro, etc.) or a serverless function... it just has to receive a webhook, validate, and then POST to your CMS.
In a way, it's just an extension of a default weakness of Jamsites to begin with: their inability to deal with dynamic user-generated content (comments, likes, etc.). The whole point of static generation is "write-rarely, read-often", and user-generated content upsets that paradigm.
If you just need a contact form, that's easy enough to outsource to another vendor/solution, because the submission doesn't necessarily have to update (your) database.
Google Forms is totally free, BTW, and can easily email you responses and/or save them to a spreadsheet: https://www.google.com/forms/about/
Where it gets tricky is you actually do want a form that updates your own database. Since you don't have a full backend, you don't have a form handler. But that's easy enough to implement with an API route (in Next, Astro, etc.) or a serverless function... it just has to receive a webhook, validate, and then POST to your CMS.