├── .adr-dir ├── .github ├── ISSUE_TEMPLATE │ ├── bug_report_form.yml │ ├── config.yml │ ├── task_form.yml │ └── user_story_form.yml ├── dependabot.yml ├── pull_request_template.md └── workflows │ ├── build.yml │ ├── cd.yml │ └── ci.yml ├── .gitignore ├── .pre-commit-config.yaml ├── Better Document Submission Video Demo 03.14.24.mp4 ├── CODEOWNERS ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Draft Doc Extractor Video Demo.mp4 ├── LICENSE ├── README.md ├── SECURITY.md ├── backend ├── .python-version ├── README.md ├── build.py ├── detect_document_type.py ├── ocr.py ├── pyproject.toml ├── src │ ├── __init__.py │ ├── context.py │ ├── database │ │ ├── __init__.py │ │ ├── data │ │ │ ├── __init__.py │ │ │ └── document_item.py │ │ ├── database.py │ │ └── exception.py │ ├── documents │ │ ├── __init__.py │ │ ├── extract_text.py │ │ ├── get_document.py │ │ ├── upload_document.py │ │ └── write_document.py │ ├── external │ │ ├── __init__.py │ │ └── aws │ │ │ ├── __init__.py │ │ │ ├── dynamodb.py │ │ │ ├── iam.py │ │ │ ├── lambdas │ │ │ ├── __init__.py │ │ │ ├── authenticate.py │ │ │ ├── get_extracted_document.py │ │ │ ├── s3_file_upload.py │ │ │ ├── sqs_dynamo_writer.py │ │ │ ├── text_extractor.py │ │ │ ├── token.py │ │ │ └── update_extracted_document.py │ │ │ ├── s3.py │ │ │ ├── secret_manager.py │ │ │ └── textract.py │ ├── forms │ │ ├── __init__.py │ │ ├── dd214.py │ │ ├── form.py │ │ ├── ten_ninety_nine_nec.py │ │ └── w2.py │ ├── logging_config.py │ ├── login │ │ ├── __init__.py │ │ ├── authenticate.py │ │ ├── login.py │ │ └── user │ │ │ ├── __init__.py │ │ │ └── role.py │ ├── ocr │ │ ├── __init__.py │ │ ├── exception.py │ │ └── ocr.py │ ├── secret │ │ ├── __init__.py │ │ ├── cloud_secret_manager.py │ │ └── exception.py │ └── storage │ │ ├── __init__.py │ │ ├── cloud_storage.py │ │ └── exception.py ├── tests │ ├── __init__.py │ ├── documents │ │ ├── __init__.py │ │ ├── test_extract_text.py │ │ ├── test_get_document.py │ │ ├── test_upload_document.py │ │ └── test_write_document.py │ ├── external │ │ ├── __init__.py │ │ └── aws │ │ │ ├── __init__.py │ │ │ ├── lambdas │ │ │ └── __init__.py │ │ │ ├── test_dynamodb.py │ │ │ ├── test_iam.py │ │ │ ├── test_s3.py │ │ │ └── test_textract.py │ └── login │ │ ├── __init__.py │ │ ├── test_authenticate.py │ │ └── test_login.py └── uv.lock ├── docs ├── Document Submission_Customer_Insights.pdf ├── OCR Tools competitive analysis.xlsx ├── Product Comparison Matrix - Document Submission.xlsx ├── Product Validation Document Submission_SummaryDeck_x.pdf ├── THREAT_MODEL.md ├── THREAT_MODEL.template.md ├── Use Cases & Extraction Info - Document Submission.xlsx ├── adrs │ ├── 0001-record-architecture-decisions.md │ ├── 0002-use-python-backend.md │ ├── 0003-user-interface-to-s3-data-flow.md │ ├── 0004-document-ids.md │ ├── 0005-aws.md │ ├── 0006-apigateway-lambda-dynamo-sqs.md │ ├── 0007-iac-terraform.md │ ├── 0008-javascript-react-frontend.md │ ├── 0009-aws-textract.md │ ├── 0010-pytest.md │ └── 0011-application-context.md ├── api_examples.md └── test_data │ ├── 1099 Sample.docx │ ├── 5937fa9cd90edpaystub.jpg │ ├── 5a55e99adf625paystub.jpg │ ├── DD214 Sample.docx │ ├── Pay Stub Sample.docx │ ├── W2 Sample.docx │ └── W2_Interactive.pdf ├── iac ├── .terraform.lock.hcl ├── api_gateway.tf ├── cloudfront.tf ├── dynamodb.tf ├── endpoint │ ├── api_gateway.tf │ ├── lambda.tf │ ├── outputs.tf │ └── variables.tf ├── endpoints.tf ├── iam.tf ├── kms.tf ├── lambda.tf ├── main.tf ├── outputs.tf ├── s3.tf ├── secrets.tf ├── sqs.tf └── variables.tf └── ui ├── .prettierignore ├── .prettierrc ├── eslint.config.mjs ├── package-lock.json ├── package.json ├── src ├── App.tsx ├── assets │ ├── GSA-logo.svg │ ├── icon-dot-gov.svg │ ├── icon-https.svg │ └── us_flag_small.png ├── components │ ├── Footer.tsx │ ├── Header.tsx │ └── Layout.tsx ├── css │ └── styles.css ├── index.html ├── index.tsx ├── pages │ ├── DownloadPage │ │ ├── DownloadPage.tsx │ │ ├── downloadPageController.test.ts │ │ ├── downloadPageController.ts │ │ └── useDownloadPage.ts │ ├── NotSignedInPage.tsx │ ├── SignInPage │ │ ├── SignInPage.tsx │ │ ├── signInPageController.test.ts │ │ ├── signInPageController.ts │ │ └── useSignInPage.ts │ ├── UploadPage │ │ ├── UploadPage.tsx │ │ ├── uploadPageController.test.ts │ │ ├── uploadPageController.ts │ │ └── useUploadPage.ts │ └── VerifyPage │ │ ├── VerifyPage.tsx │ │ ├── useVerifyPage.ts │ │ ├── verifyPageController.test.ts │ │ └── verifyPageController.ts ├── url-imports.d.ts └── utils │ ├── api.ts │ ├── formUtils.test.ts │ └── formUtils.ts ├── tsconfig.json └── vitest.config.ts /.adr-dir: -------------------------------------------------------------------------------- 1 | docs/adrs 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report_form.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/.github/ISSUE_TEMPLATE/bug_report_form.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | --- 2 | blank_issues_enabled: true 3 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/task_form.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/.github/ISSUE_TEMPLATE/task_form.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/user_story_form.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/.github/ISSUE_TEMPLATE/user_story_form.yml -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/.github/pull_request_template.md -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/.github/workflows/build.yml -------------------------------------------------------------------------------- /.github/workflows/cd.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/.github/workflows/cd.yml -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/.gitignore -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Better Document Submission Video Demo 03.14.24.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/Better Document Submission Video Demo 03.14.24.mp4 -------------------------------------------------------------------------------- /CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @GSA-TTS/studio-research-and-development 2 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Draft Doc Extractor Video Demo.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/Draft Doc Extractor Video Demo.mp4 -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/README.md -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/SECURITY.md -------------------------------------------------------------------------------- /backend/.python-version: -------------------------------------------------------------------------------- 1 | 3.13 2 | -------------------------------------------------------------------------------- /backend/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/build.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/build.py -------------------------------------------------------------------------------- /backend/detect_document_type.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/detect_document_type.py -------------------------------------------------------------------------------- /backend/ocr.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/ocr.py -------------------------------------------------------------------------------- /backend/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/pyproject.toml -------------------------------------------------------------------------------- /backend/src/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/src/context.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/context.py -------------------------------------------------------------------------------- /backend/src/database/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/src/database/data/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/src/database/data/document_item.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/database/data/document_item.py -------------------------------------------------------------------------------- /backend/src/database/database.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/database/database.py -------------------------------------------------------------------------------- /backend/src/database/exception.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/database/exception.py -------------------------------------------------------------------------------- /backend/src/documents/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/src/documents/extract_text.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/documents/extract_text.py -------------------------------------------------------------------------------- /backend/src/documents/get_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/documents/get_document.py -------------------------------------------------------------------------------- /backend/src/documents/upload_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/documents/upload_document.py -------------------------------------------------------------------------------- /backend/src/documents/write_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/documents/write_document.py -------------------------------------------------------------------------------- /backend/src/external/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/src/external/aws/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/src/external/aws/dynamodb.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/dynamodb.py -------------------------------------------------------------------------------- /backend/src/external/aws/iam.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/iam.py -------------------------------------------------------------------------------- /backend/src/external/aws/lambdas/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/src/external/aws/lambdas/authenticate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/lambdas/authenticate.py -------------------------------------------------------------------------------- /backend/src/external/aws/lambdas/get_extracted_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/lambdas/get_extracted_document.py -------------------------------------------------------------------------------- /backend/src/external/aws/lambdas/s3_file_upload.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/lambdas/s3_file_upload.py -------------------------------------------------------------------------------- /backend/src/external/aws/lambdas/sqs_dynamo_writer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/lambdas/sqs_dynamo_writer.py -------------------------------------------------------------------------------- /backend/src/external/aws/lambdas/text_extractor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/lambdas/text_extractor.py -------------------------------------------------------------------------------- /backend/src/external/aws/lambdas/token.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/lambdas/token.py -------------------------------------------------------------------------------- /backend/src/external/aws/lambdas/update_extracted_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/lambdas/update_extracted_document.py -------------------------------------------------------------------------------- /backend/src/external/aws/s3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/s3.py -------------------------------------------------------------------------------- /backend/src/external/aws/secret_manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/secret_manager.py -------------------------------------------------------------------------------- /backend/src/external/aws/textract.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/external/aws/textract.py -------------------------------------------------------------------------------- /backend/src/forms/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/forms/__init__.py -------------------------------------------------------------------------------- /backend/src/forms/dd214.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/forms/dd214.py -------------------------------------------------------------------------------- /backend/src/forms/form.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/forms/form.py -------------------------------------------------------------------------------- /backend/src/forms/ten_ninety_nine_nec.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/forms/ten_ninety_nine_nec.py -------------------------------------------------------------------------------- /backend/src/forms/w2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/forms/w2.py -------------------------------------------------------------------------------- /backend/src/logging_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/logging_config.py -------------------------------------------------------------------------------- /backend/src/login/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/src/login/authenticate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/login/authenticate.py -------------------------------------------------------------------------------- /backend/src/login/login.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/login/login.py -------------------------------------------------------------------------------- /backend/src/login/user/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/src/login/user/role.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/login/user/role.py -------------------------------------------------------------------------------- /backend/src/ocr/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/ocr/__init__.py -------------------------------------------------------------------------------- /backend/src/ocr/exception.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/ocr/exception.py -------------------------------------------------------------------------------- /backend/src/ocr/ocr.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/ocr/ocr.py -------------------------------------------------------------------------------- /backend/src/secret/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/secret/__init__.py -------------------------------------------------------------------------------- /backend/src/secret/cloud_secret_manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/secret/cloud_secret_manager.py -------------------------------------------------------------------------------- /backend/src/secret/exception.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/secret/exception.py -------------------------------------------------------------------------------- /backend/src/storage/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/storage/__init__.py -------------------------------------------------------------------------------- /backend/src/storage/cloud_storage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/storage/cloud_storage.py -------------------------------------------------------------------------------- /backend/src/storage/exception.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/src/storage/exception.py -------------------------------------------------------------------------------- /backend/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/tests/documents/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/tests/documents/test_extract_text.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/tests/documents/test_extract_text.py -------------------------------------------------------------------------------- /backend/tests/documents/test_get_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/tests/documents/test_get_document.py -------------------------------------------------------------------------------- /backend/tests/documents/test_upload_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/tests/documents/test_upload_document.py -------------------------------------------------------------------------------- /backend/tests/documents/test_write_document.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/tests/documents/test_write_document.py -------------------------------------------------------------------------------- /backend/tests/external/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/tests/external/aws/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/tests/external/aws/lambdas/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/tests/external/aws/test_dynamodb.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/tests/external/aws/test_dynamodb.py -------------------------------------------------------------------------------- /backend/tests/external/aws/test_iam.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/tests/external/aws/test_iam.py -------------------------------------------------------------------------------- /backend/tests/external/aws/test_s3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/tests/external/aws/test_s3.py -------------------------------------------------------------------------------- /backend/tests/external/aws/test_textract.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/tests/external/aws/test_textract.py -------------------------------------------------------------------------------- /backend/tests/login/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /backend/tests/login/test_authenticate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/tests/login/test_authenticate.py -------------------------------------------------------------------------------- /backend/tests/login/test_login.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/tests/login/test_login.py -------------------------------------------------------------------------------- /backend/uv.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/backend/uv.lock -------------------------------------------------------------------------------- /docs/Document Submission_Customer_Insights.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/Document Submission_Customer_Insights.pdf -------------------------------------------------------------------------------- /docs/OCR Tools competitive analysis.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/OCR Tools competitive analysis.xlsx -------------------------------------------------------------------------------- /docs/Product Comparison Matrix - Document Submission.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/Product Comparison Matrix - Document Submission.xlsx -------------------------------------------------------------------------------- /docs/Product Validation Document Submission_SummaryDeck_x.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/Product Validation Document Submission_SummaryDeck_x.pdf -------------------------------------------------------------------------------- /docs/THREAT_MODEL.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/THREAT_MODEL.md -------------------------------------------------------------------------------- /docs/THREAT_MODEL.template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/THREAT_MODEL.template.md -------------------------------------------------------------------------------- /docs/Use Cases & Extraction Info - Document Submission.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/Use Cases & Extraction Info - Document Submission.xlsx -------------------------------------------------------------------------------- /docs/adrs/0001-record-architecture-decisions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0001-record-architecture-decisions.md -------------------------------------------------------------------------------- /docs/adrs/0002-use-python-backend.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0002-use-python-backend.md -------------------------------------------------------------------------------- /docs/adrs/0003-user-interface-to-s3-data-flow.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0003-user-interface-to-s3-data-flow.md -------------------------------------------------------------------------------- /docs/adrs/0004-document-ids.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0004-document-ids.md -------------------------------------------------------------------------------- /docs/adrs/0005-aws.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0005-aws.md -------------------------------------------------------------------------------- /docs/adrs/0006-apigateway-lambda-dynamo-sqs.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0006-apigateway-lambda-dynamo-sqs.md -------------------------------------------------------------------------------- /docs/adrs/0007-iac-terraform.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0007-iac-terraform.md -------------------------------------------------------------------------------- /docs/adrs/0008-javascript-react-frontend.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0008-javascript-react-frontend.md -------------------------------------------------------------------------------- /docs/adrs/0009-aws-textract.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0009-aws-textract.md -------------------------------------------------------------------------------- /docs/adrs/0010-pytest.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0010-pytest.md -------------------------------------------------------------------------------- /docs/adrs/0011-application-context.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/adrs/0011-application-context.md -------------------------------------------------------------------------------- /docs/api_examples.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/api_examples.md -------------------------------------------------------------------------------- /docs/test_data/1099 Sample.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/test_data/1099 Sample.docx -------------------------------------------------------------------------------- /docs/test_data/5937fa9cd90edpaystub.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/test_data/5937fa9cd90edpaystub.jpg -------------------------------------------------------------------------------- /docs/test_data/5a55e99adf625paystub.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/test_data/5a55e99adf625paystub.jpg -------------------------------------------------------------------------------- /docs/test_data/DD214 Sample.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/test_data/DD214 Sample.docx -------------------------------------------------------------------------------- /docs/test_data/Pay Stub Sample.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/test_data/Pay Stub Sample.docx -------------------------------------------------------------------------------- /docs/test_data/W2 Sample.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/test_data/W2 Sample.docx -------------------------------------------------------------------------------- /docs/test_data/W2_Interactive.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/docs/test_data/W2_Interactive.pdf -------------------------------------------------------------------------------- /iac/.terraform.lock.hcl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/.terraform.lock.hcl -------------------------------------------------------------------------------- /iac/api_gateway.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/api_gateway.tf -------------------------------------------------------------------------------- /iac/cloudfront.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/cloudfront.tf -------------------------------------------------------------------------------- /iac/dynamodb.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/dynamodb.tf -------------------------------------------------------------------------------- /iac/endpoint/api_gateway.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/endpoint/api_gateway.tf -------------------------------------------------------------------------------- /iac/endpoint/lambda.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/endpoint/lambda.tf -------------------------------------------------------------------------------- /iac/endpoint/outputs.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/endpoint/outputs.tf -------------------------------------------------------------------------------- /iac/endpoint/variables.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/endpoint/variables.tf -------------------------------------------------------------------------------- /iac/endpoints.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/endpoints.tf -------------------------------------------------------------------------------- /iac/iam.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/iam.tf -------------------------------------------------------------------------------- /iac/kms.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/kms.tf -------------------------------------------------------------------------------- /iac/lambda.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/lambda.tf -------------------------------------------------------------------------------- /iac/main.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/main.tf -------------------------------------------------------------------------------- /iac/outputs.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/outputs.tf -------------------------------------------------------------------------------- /iac/s3.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/s3.tf -------------------------------------------------------------------------------- /iac/secrets.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/secrets.tf -------------------------------------------------------------------------------- /iac/sqs.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/sqs.tf -------------------------------------------------------------------------------- /iac/variables.tf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/iac/variables.tf -------------------------------------------------------------------------------- /ui/.prettierignore: -------------------------------------------------------------------------------- 1 | dist/ 2 | -------------------------------------------------------------------------------- /ui/.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/.prettierrc -------------------------------------------------------------------------------- /ui/eslint.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/eslint.config.mjs -------------------------------------------------------------------------------- /ui/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/package-lock.json -------------------------------------------------------------------------------- /ui/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/package.json -------------------------------------------------------------------------------- /ui/src/App.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/App.tsx -------------------------------------------------------------------------------- /ui/src/assets/GSA-logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/assets/GSA-logo.svg -------------------------------------------------------------------------------- /ui/src/assets/icon-dot-gov.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/assets/icon-dot-gov.svg -------------------------------------------------------------------------------- /ui/src/assets/icon-https.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/assets/icon-https.svg -------------------------------------------------------------------------------- /ui/src/assets/us_flag_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/assets/us_flag_small.png -------------------------------------------------------------------------------- /ui/src/components/Footer.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/components/Footer.tsx -------------------------------------------------------------------------------- /ui/src/components/Header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/components/Header.tsx -------------------------------------------------------------------------------- /ui/src/components/Layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/components/Layout.tsx -------------------------------------------------------------------------------- /ui/src/css/styles.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/css/styles.css -------------------------------------------------------------------------------- /ui/src/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/index.html -------------------------------------------------------------------------------- /ui/src/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/index.tsx -------------------------------------------------------------------------------- /ui/src/pages/DownloadPage/DownloadPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/DownloadPage/DownloadPage.tsx -------------------------------------------------------------------------------- /ui/src/pages/DownloadPage/downloadPageController.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/DownloadPage/downloadPageController.test.ts -------------------------------------------------------------------------------- /ui/src/pages/DownloadPage/downloadPageController.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/DownloadPage/downloadPageController.ts -------------------------------------------------------------------------------- /ui/src/pages/DownloadPage/useDownloadPage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/DownloadPage/useDownloadPage.ts -------------------------------------------------------------------------------- /ui/src/pages/NotSignedInPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/NotSignedInPage.tsx -------------------------------------------------------------------------------- /ui/src/pages/SignInPage/SignInPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/SignInPage/SignInPage.tsx -------------------------------------------------------------------------------- /ui/src/pages/SignInPage/signInPageController.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/SignInPage/signInPageController.test.ts -------------------------------------------------------------------------------- /ui/src/pages/SignInPage/signInPageController.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/SignInPage/signInPageController.ts -------------------------------------------------------------------------------- /ui/src/pages/SignInPage/useSignInPage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/SignInPage/useSignInPage.ts -------------------------------------------------------------------------------- /ui/src/pages/UploadPage/UploadPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/UploadPage/UploadPage.tsx -------------------------------------------------------------------------------- /ui/src/pages/UploadPage/uploadPageController.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/UploadPage/uploadPageController.test.ts -------------------------------------------------------------------------------- /ui/src/pages/UploadPage/uploadPageController.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/UploadPage/uploadPageController.ts -------------------------------------------------------------------------------- /ui/src/pages/UploadPage/useUploadPage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/UploadPage/useUploadPage.ts -------------------------------------------------------------------------------- /ui/src/pages/VerifyPage/VerifyPage.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/VerifyPage/VerifyPage.tsx -------------------------------------------------------------------------------- /ui/src/pages/VerifyPage/useVerifyPage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/VerifyPage/useVerifyPage.ts -------------------------------------------------------------------------------- /ui/src/pages/VerifyPage/verifyPageController.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/VerifyPage/verifyPageController.test.ts -------------------------------------------------------------------------------- /ui/src/pages/VerifyPage/verifyPageController.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/pages/VerifyPage/verifyPageController.ts -------------------------------------------------------------------------------- /ui/src/url-imports.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/url-imports.d.ts -------------------------------------------------------------------------------- /ui/src/utils/api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/utils/api.ts -------------------------------------------------------------------------------- /ui/src/utils/formUtils.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/utils/formUtils.test.ts -------------------------------------------------------------------------------- /ui/src/utils/formUtils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/src/utils/formUtils.ts -------------------------------------------------------------------------------- /ui/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/tsconfig.json -------------------------------------------------------------------------------- /ui/vitest.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GSA-TTS/document-extractor-poc/HEAD/ui/vitest.config.ts --------------------------------------------------------------------------------