You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Adds guidelines for contributors
- Adds lock file to /scripts
- Adds engine info to package.json in /scripts
- Adds data encryption to feature matrix
We use [Volta](https://volta.sh/) to ensure consistent `node` and `yarn` versions. Published packages are available [on NPM](https://www.npmjs.com/search?q=getodk).
17
-
18
-
### Running locally
19
-
20
-
To run ODK Web Forms from this repository:
21
-
22
-
```sh
23
-
yarn
24
-
yarn build
25
-
yarn workspace @getodk/web-forms dev
26
-
```
27
-
28
-
This repository uses yarn workspaces, so to run an npm script in any of the packages:
So instead of `cd packages/web-forms && yarn test`, run `yarn workspace @getodk/web-forms test`.
35
-
36
-
### Running tests
37
-
38
-
```sh
39
-
yarn
40
-
yarn build
41
-
TZ=America/Phoenix CI=true npx turbo run test --concurrency=1
42
-
```
43
-
44
-
### Packages
45
-
46
-
-[web-forms](/packages/web-forms): form-filling frontend built with Vue
47
-
-[xforms-engine](/packages/xforms-engine): implementation of the [ODK XForms specification](https://getodk.github.io/xforms-spec/)
48
-
-[xpath](/packages/xpath): XPath evaluator with ODK XForms extensions
49
-
-[scenario](/packages/scenario): engine client used to express tests on forms
50
-
51
12
## Project status
52
13
53
14
ODK Web Forms is developed by the [ODK team](https://getodk.org/).
@@ -292,6 +253,7 @@ This section is auto generated. Please update `feature-matrix.json` and then run
292
253
| save as draft ||
293
254
| offline entities ||
294
255
| MBtiles / offline map layers ||
256
+
| Data encryption ||
295
257
296
258
</details>
297
259
@@ -433,14 +395,97 @@ We will be adding color and more styling soon. We intend to expose a way to do b
433
395
### In the ODK ecosystem
434
396
435
397
-[JavaRosa](https://github.com/getodk/javarosa) is the reference implementation for [ODK XForms](https://getodk.github.io/xforms-spec/). It powers the [Collect mobile application](https://github.com/getodk/collect/).
436
-
-[Enketo](https://github.com/enketo/enketo) is an ODK XForms web form application that has been maintained by the ODK team since 2021.
398
+
-[Enketo](https://github.com/enketo/enketo) is an ODK XForms web form application that was maintained by the ODK team from 2021 to 2024.
437
399
-[XLSForm](https://github.com/xlsform/pyxform) is a standard for developing ODK XForms using spreadsheets.
438
400
439
401
### Outside the ODK ecosystem
440
402
441
403
-[Orbeon forms](https://www.orbeon.com/) is a web form system that uses the W3C XForms standard.
442
404
-[Fore](https://github.com/Jinntec/Fore) is an XForms-inspired framework for defining frontend applications.
443
405
406
+
## Contributing to the Project
407
+
408
+
Thank you for contributing! Follow these guidelines for smooth collaboration.
409
+
410
+
### Requirements
411
+
412
+
We use [Volta](https://volta.sh/) to ensure consistent `node` and `yarn` versions. Published packages are available [on NPM](https://www.npmjs.com/search?q=getodk).
413
+
414
+
### Running locally
415
+
416
+
To run ODK Web Forms from this repository:
417
+
418
+
```sh
419
+
yarn
420
+
yarn build
421
+
yarn workspace @getodk/web-forms dev
422
+
```
423
+
424
+
This repository uses yarn workspaces, so to run an npm script in any of the packages:
-**Body**: List changes (e.g., `- add geopoint.xml`).
463
+
-**Footer**: Use `Co-authored-by: @<username>` for credits to another contributor.
464
+
465
+
**Example**:
466
+
467
+
```
468
+
feat(#33): add input components
469
+
470
+
- Add geopoint input in Vue
471
+
- Add XPath evaluator
472
+
473
+
Co-authored-by: @jane_doe
474
+
```
475
+
476
+
## Pull Requests
477
+
478
+
-**Squash and Merge:** After approval, and when possible "squash and merge" your PR to maintain a clean commit history.
479
+
-**Keep PRs Focused:** Break large changes into smaller, focused PRs to simplify review and reduce merge conflicts.
480
+
-**Code Style:** Adhere to the project's linting and formatting rules (e.g., ESLint, Prettier). Avoid skipping lint rules.
481
+
-**Testing:** Include unit and/or integration tests for new features or bug fixes.
482
+
-**PR Description:**
483
+
- Reference related issues (e.g., Fixes #123).
484
+
- Clearly describe the changes, their purpose, and any impact on existing functionality.
485
+
- If applicable, include screenshot and videos of your testing.
486
+
487
+
Contact maintainers with questions. Happy contributing!
488
+
444
489
## Releases
445
490
446
491
If you'd like to try the functionality available on `main`, see the preview [on the ODK website](https://getodk.org/web-forms-preview/) which is updated daily. We try to release frequently and if there's functionality on `main` that you need but isn't released yet, please file an issue to request a release!
0 commit comments