getodk / web-forms

ODK Web Forms enables form filling and submission editing of ODK forms in a web browser. It's coming soon! ✨
https://getodk.org
Apache License 2.0
10 stars 9 forks source link

Public service where anyone can try their XLSForm with Web Forms #151

Closed lognaturel closed 1 month ago

lognaturel commented 4 months ago

User story

As someone interested in web forms for the ODK ecosystem I want to try my XLSForm with ODK Web Forms So that I can provide feedback and determine whether it's ready for my use

We had initially discussed adding this as a button on https://getodk.org/xlsform/ but we've decided we'd rather have a dedicated page with more information. XLSForm online may link to that page.

Requirements:

On the ODK website, I think it should go under resources as "Try new ODK Web Forms" or "Web Forms"

Figma

Image

User flow:

Future considerations

In the designs we have some of the future state considerations like:

sadiqkhoja commented 2 months ago

We now have a UI design for this at https://www.figma.com/design/6v0NnvayfDlaQhYpjv37Bn/Web-Forms?node-id=30-1739&t=nhahbntZEAL3n873-1

Few Ideas for Implementation:

I am thinking we can modify existing Demo application inside @getodk/web-forms package to include:

XLSForm to XForm conversion options:

1- We can either deploy a dedicated instance of pyxform-http or add CORS rule in XLSForm Online 2- We can run pyxform python package directly in browser using WebAssembly, I have done a proof-of-concept to check its feasibility: demo: https://www.sadiqkhoja.com/web-forms/pr-preview/pyxform (chrome only because I am using Native File System API) source code: https://github.com/sadiqkhoja/web-forms/tree/pyxform-in-browser

Pros of 2nd option:

Cons of 2nd option

Integration with getodk.org

1- Render this service in iFrame 2- Add a build step to copy header and footer of getodk.org

alyblenkin commented 1 month ago

Feedback from Yaw & Hélène: