VA Forms System Core (VAFSC) is the second generation of the forms library
which is built using React, Formik, and Typescript.
What is the forms library
?
The forms library is the current production system that most forms are built with inside of vets-website
. This legacy system uses a forked version of React JSON Schema Form (RJSF) and a config based approach to designing and developing forms. Although this system worked well up to this point, VAFSC will be a major improvement by incorporating React components and giving engineers and designers the power back that RJSF did not allow for.
NPM Package: NPM va-forms-system-core
Github Pages: VA Forms System Core Github Pages
VAFSC will include but not limited to:
- Routing
- Save In Progress
- Web Components
- Accessibility
- Nodejs/NPM
- run
nvm use
to install and use proper node version
- run
- Yarn
Once you have the prerequisites downloaded you are ready to get the project built.
First you need to install all of the packages and their dependancies by running:
-
Install
yarn install
-
Build
yarn build
-
Watch
yarn watch
Run the examples in this repo with:
yarn serve-examples
To create new example:
- Make an entry file at
examples/my-new-example/index.jsx
- (Optional) Add a new bullet to the directory listing at
examples/index.jsx
to appear on the home page so other developers can quickly go to it
We have documentation in /docs
that is hosted using GitHub Pages.
To update the document references run:
yarn build
To run the Jekyll site locally, run the following commands:
cd docs
bundle install
bundle exec jekyll serve
There are 3 github actions currently but more will be added in the future.
- codeql-analysis
- testing
- npm-publish
For more information about the purpose and architecture of this library, check out the design document.
The design document is intended to be a living document, so if you find it doesn't accurately reflect reality, please open an issue or submit a PR.