Skip to content
This repository was archived by the owner on Nov 2, 2023. It is now read-only.
This repository was archived by the owner on Nov 2, 2023. It is now read-only.

Embed Build into Central #306

@florianm

Description

@florianm

This is probably not needed, as build.getodk.org provides a free form builder already.

What

  • Build (GUI to XForm) and build2xlsform (XForm to XLSForm) as Docker images embedded in Central's docker-compose, alongside Enketo (XLSForm to preview) and pyxform (XLSForm to XForm).
  • Some level of integration between Central UI (links to open local Build) and Build (publish to local Central).
  • Let integrated Build build forms without a link to any project, then let users choose a project to publish the form to (match any existing form IDs).
  • Each Central now has a built-in form builder.

How

  • Add a separate Build postgres db image to Central's docker-compose. Keeping Central and Build dbs physically separated will help maintenance but requires some link for user management.
  • OR use same db - add routes to Central for Build JS frontend's requests for users and forms (unpublished forms stored in internal Build format for each Central user).
  • Add Build's image to Central's docker-compose.
  • Add build2xlsform's image to Central's docker-compose.
  • Change Central to add routes and UI to Build and build2xlsform.
  • Change Build to add (if enabled through deployment env vars) "publish to local Central".

Challenges

  • Have Central users and their permissions available in Build but also keep Central and Build dbs separate.
  • OR change existing Build frontend routes to not collide with existing Central routes, and add new Central routes for changed Build routes.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions