Rapido can be done in the filesystem. Same as diazo can.
I don't see why you can't do it this way. It's certainly easier when you have instant reload of code and less boiler plate.
@pigeonflight oh yes you can totally do that.
Few comments:
the form can be done manually as a Rapido template (html or .pt), but it can also be done with collective.easyform
the restful API is built-in in Rapido, so no need to implement it, but if you need a specific endpoint, a basic Rapido element returning a dictionnary (or any serializable object) will do.
I do not recommand to put the JS directly in a Rapido template, it is better to create a separated .js file in the rapido app folder and load it using a tag