Skip to content

Repo for development of a new TANF Data Reporting System

License

Notifications You must be signed in to change notification settings

andrew-jameson/TANF-app

 
 

Repository files navigation

Temporary Assistance for Needy Families (TANF) Data Portal - TDP

Welcome to the project for the New TANF Data Portal, which will replace the legacy TANF Data Reporting System!

Our vision is to build a new, secure, web-based data reporting system to improve the federal reporting experience for TANF grantees and federal staff. The new system will allow grantees to easily submit accurate data and be confident that they have fulfilled their reporting requirements. This will reduce the burden on all users, improve data quality, lead to better policy and program decision-making, and ultimately help low-income families.


Current Build

Raft-Tech(develop) HHS(main) HHS(master)
Build CircleCI-Dev CircleCI-HHS CircleCI-HHS
Security Dependabot-Dev Advisories-HHS Advisories-HHS
Frontend Coverage Codecov-Frontend-Dev Codeco-Frontend-HHS Codeco-Frontend-HHS
Backend Coverage Codecov-Backend-Dev Codecov-Backend-HHS Codecov-Backend-HHS

Due to limitations imposed by Github and occasional slow server response times, some badges may require a page refresh to load.

TDP is subject to the ACF Privacy Policy and HHS Vulnerability Disclosure Policy.


Table of Contents

  • Background: Project, agency, legacy system, TDP prototype, acquisition, and program background
  • Product-Strategy: Product Vision, roadmap, and planning
  • How-We-Work: Team composition, sprint schedule, regular meetings, and workflows
  • Security-Compliance: Supplementary information in support of the ATO process
  • Sprint-Review: Summaries of delivered stories per sprint
  • Technical-Documentation: Architectural Decision Records, System documentation; technical workflows
  • User-Experience: Research-related project background, strategy and planning documents, and research syntheses
  • Codebase
    • Frontend: Frontend ReactJS codebase
    • Backend: Backend Django codebase
    • Terraform: Documentation and syntax on CI process for automated provisioning of Cloud.gov brokered services
  • Web-based tools

Infrastructure

TDP Uses Infrastructure as Code (IaC) and DevSecOps automation

Authentication

TDP application requires strong multi-factor authentication (MFA) for all users, and Personal Identity Verification (PIV) authentication must be used as the 2nd factor for all internal ACF staff. ACF AMS authentication service is being used for ACF users, and Login.gov authentication service is being used for external users.

See Architecture Decision Record 005 - Application Authentication - for more details.

Cloud Environment

Cloud.gov is being used as the cloud environment. This platform-as-a-service (PaaS) removes almost all of the infrastructure monitoring and maintenance from the system, is already procured for OFA, and has a FedRAMP Joint Authorization Board Provisional Authority to Operate (JAB P-ATO) on file.

See Architecture Decision Record 003 - Application Hosting - for more details.

CI/CD Pipelines with CircleCI

Continuous Integration (CI)

On each git push and merge, a comprehensive list of automated checks are run: Unit tests (Jest, Linting tests (ESLint, Accessibility tests (Pa11y), and Security Scanning (OWASP ZAP). The configurations for CI are kept in .circleci/config.yml.

See Architecture Decision Record 006 - Continuous integration and TDP's CircleCi Workflows, Environment Variables, and Builds- for more details.

Continuous Deployment

The application is continuously deployed to the dev, staging, or prod environments based on the git branch the code is merged in. The configuration for different branches is maintained in .circleci/config.yml.

See Architecture Decision Record 008 - Deployment Flow - for more details.

Points of Contact

Position Name GitHub Username E-mail
Product Owner Lauren Frohlich @lfrohlich [email protected]
Government Technical Monitor Alex Pennington @adpennington [email protected]
Vendor Product Manager Steve Nino @stevenino [email protected]

About

Repo for development of a new TANF Data Reporting System

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CSS 36.7%
  • JavaScript 36.5%
  • Python 15.8%
  • HTML 7.4%
  • SCSS 1.7%
  • Shell 1.5%
  • Other 0.4%