Skip to content

DEFRA/grants-ui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,417 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

grants-ui

Security Rating Quality Gate Status Coverage

A YAML-configured grant application form engine built on Node.js, Hapi, and the DXT Forms Engine. Supports multiple grant types with Defra ID authentication, task lists, save-and-return, and submission to GAS.

Quick Start

nvm use
npm ci
npm run dev

Or with Docker:

npm run docker:up

Features

The Grants UI service provides a comprehensive set of features for building grant application forms. Key features include:

  • Form Components: 13 different input components (TextField, RadiosField, CheckboxesField, etc.)
  • Page Types: Summary, Declaration, Confirmation, Terminal, and Conditional pages
  • Guidance Components: Html, Details, InsetText, Markdown, and List components
  • Authentication: Defra ID integration with whitelist support
  • Conditional Logic: Dynamic page routing and content display
  • Validation: Custom validation messages and schema validation
  • Configuration: YAML-based form definitions with confirmation content

For complete documentation of all available features, see FEATURES.md.

Documentation

Document Description
Getting Started Requirements, setup, environment variables, project structure, npm scripts
Architecture Forms engine, state model, task lists, GAS integration, confirmation pages
Features Form components, page types, guidance, conditional logic, validation
Authentication & Security Defra ID, whitelist, cookies, sessions, S2S auth, rate limiting
Docker Development/production images, Docker Compose, HA proxy, debugging
Testing Unit, integration, contract, acceptance, performance, and mutation testing
Logging & Error Handling Structured logging system, error classes, log codes
Analytics Google Analytics 4 tracking configuration
Consolidated View API DAL GraphQL endpoint and configuration
Development Tools Dev routes, demo pages, journey runner
Utility Scripts Form upload tool, cookie unsealing utility
Payment Architecture Payment page controllers, strategies, and configuration

Licence

THIS INFORMATION IS LICENSED UNDER THE CONDITIONS OF THE OPEN GOVERNMENT LICENCE found at:

http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3

The following attribution statement MUST be cited in your products and applications when using this information.

Contains public sector information licensed under the Open Government license v3

About the licence

The Open Government Licence (OGL) was developed by the Controller of Her Majesty's Stationery Office (HMSO) to enable information providers in the public sector to license the use and re-use of their information under a common open licence.

It is designed to encourage use and re-use of information freely and flexibly, with only a few conditions.

About

Git repository for service grants-ui

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors