Skip to content

toole-brendan/handreceipt_dual_use

Repository files navigation

HANDRECEIPT (TOTAL TREE STRUCTURE)

[ 704] . ├── [ 480] backend │ ├── [ 96] config │ ├── [ 96] docs │ ├── [ 192] migrations │ │ └── [ 96] src │ │ └── [2.8K] main.rs │ ├── [ 320] scripts │ ├── [ 512] src │ │ ├── [ 256] api │ │ │ ├── [ 288] auth │ │ │ ├── [ 224] handlers │ │ │ ├── [ 224] middleware │ │ │ ├── [1.2K] mod.rs │ │ │ ├── [ 224] routes │ │ │ └── [ 128] types │ │ ├── [3.0K] app_builder.rs │ │ ├── [ 160] application │ │ │ ├── [ 149] mod.rs │ │ │ ├── [ 224] property │ │ │ └── [ 160] transfer │ │ ├── [ 96] config │ │ │ └── [ 644] mod.rs │ │ ├── [ 769] core.rs │ │ ├── [ 224] domain │ │ │ ├── [ 361] error.rs │ │ │ ├── [ 143] mod.rs │ │ │ ├── [ 352] models │ │ │ ├── [ 288] property │ │ │ └── [ 288] transfer │ │ ├── [ 352] error │ │ │ ├── [1.7K] api.rs │ │ │ ├── [ 331] audit.rs │ │ │ ├── [1.3K] blockchain.rs │ │ │ ├── [2.3K] core.rs │ │ │ ├── [ 366] database.rs │ │ │ ├── [ 331] mod.rs │ │ │ ├── [ 856] repository.rs │ │ │ ├── [ 535] security.rs │ │ │ └── [ 456] validation.rs │ │ ├── [ 160] infrastructure │ │ │ ├── [ 352] blockchain │ │ │ ├── [ 444] mod.rs │ │ │ └── [ 192] persistence │ │ ├── [ 230] lib.rs │ │ ├── [2.4K] main.rs │ │ ├── [ 96] migrations │ │ │ └── [1.1K] mod.rs │ │ ├── [ 192] security │ │ │ ├── [2.1K] access_control.rs │ │ │ ├── [1.5K] auth.rs │ │ │ ├── [1.7K] context.rs │ │ │ └── [ 171] mod.rs │ │ ├── [ 480] types │ │ │ ├── [4.2K] app.rs │ │ │ ├── [ 968] asset.rs │ │ │ ├── [1.9K] audit.rs │ │ │ ├── [4.4K] blockchain.rs │ │ │ ├── [ 753] mod.rs │ │ │ ├── [ 901] permissions.rs │ │ │ ├── [ 983] property.rs │ │ │ ├── [4.4K] scanning.rs │ │ │ ├── [ 128] security │ │ │ ├── [3.2K] signature.rs │ │ │ ├── [ 464] user.rs │ │ │ ├── [3.0K] validation.rs │ │ │ └── [3.6K] verification.rs │ │ └── [ 96] utils │ │ └── [ 790] mod.rs │ ├── [ 256] tests │ │ ├── [ 128] common │ │ │ ├── [8.2K] mocks.rs │ │ │ └── [5.4K] mod.rs │ │ ├── [ 288] integration │ │ │ ├── [3.8K] blockchain_verification_test.rs │ │ │ ├── [2.1K] mobile_workflow_test.rs │ │ │ ├── [1.4K] mod.rs │ │ │ ├── [5.8K] sawtooth_integration_test.rs │ │ │ ├── [3.2K] security_test.rs │ │ │ ├── [2.5K] transfer_edge_test.rs │ │ │ └── [1.7K] transfer_workflow_test.rs │ │ ├── [ 286] mod.rs │ │ └── [ 256] unit │ │ ├── [2.4K] access_control_test.rs │ │ ├── [3.2K] core_test.rs │ │ ├── [2.7K] error_test.rs │ │ ├── [ 163] mod.rs │ │ ├── [ 128] scanning │ │ └── [ 160] signature │ └── [ 96] tools │ └── [ 128] diagnostics │ └── [ 96] src ├── [ 256] docs ├── [ 672] frontend │ ├── [ 160] public │ ├── [ 864] src │ │ ├── [ 192] app │ │ │ ├── [1.2K] App.tsx │ │ │ ├── [ 40] index.ts │ │ │ ├── [1.2K] main.tsx │ │ │ └── [6.9K] routes.tsx │ │ ├── [ 288] components │ │ │ ├── [1.6K] CommandPaletteProvider.tsx │ │ │ ├── [1.4K] ToastProvider.tsx │ │ │ ├── [ 448] common │ │ │ ├── [ 128] feedback │ │ │ ├── [ 352] forms │ │ │ ├── [ 320] layout │ │ │ └── [ 160] navigation │ │ ├── [ 96] config │ │ │ └── [ 296] serviceWorkerConfig.ts │ │ ├── [ 384] constants │ │ │ ├── [ 344] api.ts │ │ │ ├── [ 142] date.ts │ │ │ ├── [ 396] errors.ts │ │ │ ├── [ 263] index.ts │ │ │ ├── [ 392] permissions.ts │ │ │ ├── [ 309] property.ts │ │ │ ├── [ 323] routes.ts │ │ │ ├── [ 345] status.ts │ │ │ ├── [ 234] ui.ts │ │ │ └── [ 270] validation.ts │ │ ├── [ 160] contexts │ │ │ ├── [ 864] AssetContext.tsx │ │ │ ├── [4.7K] SettingsContext.tsx │ │ │ └── [1.9K] ThemeContext.tsx │ │ ├── [ 96] docs │ │ ├── [ 218] env.d.ts │ │ ├── [ 736] features │ │ │ ├── [ 96] admin │ │ │ ├── [ 128] analytics │ │ │ ├── [ 96] audit │ │ │ ├── [ 192] auth │ │ │ ├── [ 160] blockchain │ │ │ ├── [ 128] common │ │ │ ├── [ 224] history │ │ │ ├── [ 96] mobile │ │ │ ├── [ 96] network │ │ │ ├── [ 96] officer │ │ │ ├── [ 224] personnel │ │ │ ├── [ 192] profile │ │ │ ├── [ 160] property │ │ │ ├── [ 224] qr-generator │ │ │ ├── [ 128] security │ │ │ ├── [ 256] sensitive-items │ │ │ ├── [ 160] settings │ │ │ ├── [ 96] soldier │ │ │ ├── [ 128] system │ │ │ ├── [ 160] transfers │ │ │ └── [ 128] verification │ │ ├── [ 160] hooks │ │ │ ├── [ 55] index.ts │ │ │ ├── [ 493] useAuth.ts │ │ │ └── [ 893] useTheme.ts │ │ ├── [ 278] index.tsx │ │ ├── [ 96] lib │ │ │ └── [2.2K] utils.ts │ │ ├── [1.9K] main.tsx │ │ ├── [ 96] middleware │ │ │ └── [ 497] errorHandler.ts │ │ ├── [ 224] mocks │ │ │ ├── [ 131] browser.ts │ │ │ ├── [ 384] handlers.ts │ │ │ ├── [3.1K] mockData.ts │ │ │ ├── [5.5K] mockPersonnelData.ts │ │ │ └── [ 320] setup.ts │ │ ├── [ 416] pages │ │ │ ├── [ 128] admin │ │ │ ├── [ 192] auth │ │ │ ├── [ 96] history │ │ │ ├── [ 375] layout.tsx │ │ │ ├── [ 128] personnel │ │ │ ├── [ 128] property │ │ │ ├── [ 128] qr │ │ │ ├── [ 96] sensitive-items │ │ │ ├── [ 96] settings │ │ │ ├── [ 128] transfers │ │ │ └── [ 256] utility │ │ ├── [1.7K] serviceWorker.ts │ │ ├── [ 320] services │ │ │ ├── [ 238] analytics.ts │ │ │ ├── [ 192] api │ │ │ ├── [3.4K] api.ts │ │ │ ├── [ 789] auth.ts │ │ │ ├── [ 273] errorTracking.ts │ │ │ ├── [ 71] index.ts │ │ │ └── [3.8K] websocket.ts │ │ ├── [ 224] shared │ │ │ ├── [ 320] components │ │ │ ├── [ 256] hooks │ │ │ ├── [ 96] styles │ │ │ ├── [ 160] types │ │ │ └── [ 192] utils │ │ ├── [ 224] store │ │ │ ├── [ 56] index.ts │ │ │ ├── [ 192] middleware │ │ │ ├── [ 160] selectors │ │ │ ├── [ 256] slices │ │ │ └── [1.7K] store.ts │ │ ├── [ 480] stories │ │ │ ├── [1.4K] Button.stories.ts │ │ │ ├── [ 888] Button.tsx │ │ │ ├── [ 788] Header.stories.ts │ │ │ ├── [1.5K] Header.tsx │ │ │ ├── [1.0K] Page.stories.ts │ │ │ ├── [2.5K] Page.tsx │ │ │ ├── [ 576] assets │ │ │ ├── [ 96] inputs │ │ │ └── [ 96] layout │ │ ├── [ 384] styles │ │ │ ├── [ 480] base │ │ │ ├── [ 608] components │ │ │ ├── [ 608] features │ │ │ ├── [ 224] layout │ │ │ ├── [ 224] theme │ │ │ ├── [ 192] themes │ │ │ ├── [ 224] tokens │ │ │ └── [ 256] utilities │ │ ├── [ 288] types │ │ │ ├── [ 934] auth.ts │ │ │ ├── [ 434] index.ts │ │ │ ├── [1.5K] personnel.ts │ │ │ ├── [1.8K] property.ts │ │ │ ├── [ 630] shared.ts │ │ │ ├── [ 676] theme.ts │ │ │ └── [ 285] websocket.ts │ │ └── [ 160] utils │ │ ├── [ 96] core │ │ ├── [ 24] index.ts │ │ └── [ 128] types │ └── [1.1K] vite.config.ts ├── [ 576] mobile │ ├── [ 384] android │ │ ├── [ 192] app │ │ │ ├── [6.7K] build.gradle │ │ │ └── [ 128] src │ │ ├── [3.0K] build.gradle │ │ ├── [ 96] gradle │ │ │ └── [ 128] wrapper │ │ ├── [2.2K] gradle.properties │ │ ├── [ 96] rust │ │ │ └── [ 96] src │ │ └── [ 512] settings.gradle │ ├── [ 320] ios │ │ ├── [ 544] HandReceipt │ │ │ ├── [ 96] Camera │ │ │ ├── [ 96] Extensions │ │ │ ├── [ 11K] HandReceiptModule.swift │ │ │ ├── [ 128] Images.xcassets │ │ │ └── [ 317] QRCameraManager.swift │ │ ├── [ 128] HandReceipt.xcodeproj │ │ │ └── [ 96] xcshareddata │ │ ├── [ 96] HandReceipt.xcworkspace │ │ └── [ 128] HandReceiptTests │ ├── [ 256] rust │ │ ├── [ 160] android-build │ │ │ ├── [ 909] build.rs │ │ │ └── [ 96] src │ │ ├── [ 160] ios-build │ │ │ └── [ 96] src │ │ └── [ 352] src │ │ ├── [ 160] blockchain │ │ ├── [ 160] crypto │ │ ├── [3.6K] error.rs │ │ ├── [4.0K] ffi.rs │ │ ├── [4.2K] lib.rs │ │ ├── [ 96] offline │ │ ├── [ 128] scanner │ │ ├── [ 96] security │ │ └── [ 128] sync │ ├── [ 96] scripts │ └── [ 544] src │ ├── [2.3K] App.tsx │ ├── [ 96] android │ │ └── [ 96] NativeModules │ ├── [ 192] components │ │ ├── [ 224] common │ │ ├── [ 128] feedback │ │ ├── [ 128] forms │ │ └── [ 96] layout │ ├── [ 96] contexts │ │ └── [ 866] AuthContext.tsx │ ├── [ 288] core │ │ ├── [ 96] blockchain │ │ ├── [ 96] bridge │ │ ├── [ 192] crypto │ │ ├── [ 96] errors │ │ ├── [ 160] sync │ │ ├── [ 160] types │ │ └── [ 96] utils │ ├── [ 128] features │ │ ├── [ 193] index.ts │ │ └── [ 96] property │ ├── [ 160] hooks │ │ ├── [1.9K] useAuth.ts │ │ ├── [1.5K] useNetworkStatus.ts │ │ └── [6.2K] useTransferQueue.ts │ ├── [ 96] ios │ │ └── [ 96] NativeModules │ ├── [ 96] native │ │ └── [5.7K] HandReceiptMobile.ts │ ├── [ 96] navigation │ │ └── [7.0K] index.tsx │ ├── [ 288] screens │ │ ├── [ 96] analytics │ │ ├── [ 160] auth │ │ ├── [ 128] command │ │ ├── [ 96] profile │ │ ├── [ 160] property │ │ ├── [ 128] reports │ │ └── [ 192] transfer │ ├── [ 96] services │ │ └── [7.3K] api.ts │ ├── [ 96] store │ │ └── [1.1K] index.ts │ ├── [ 256] types │ │ ├── [ 628] auth.ts │ │ ├── [ 169] env.d.ts │ │ ├── [3.0K] navigation.ts │ │ ├── [ 656] qrcode.d.ts │ │ ├── [1.2K] scanner.ts │ │ └── [ 923] sync.ts │ └── [ 160] utils │ ├── [ 210] date.ts │ ├── [1.5K] diagnostics.ts │ └── [1.3K] error-handler.ts └── [ 96] rust 188 directories, 139 files

This is a description of my app — HandReceipt

Goal: Develop a secure, blockchain-based system for tracking property, ensuring high availability, enabling offline operation, and providing robust auditability.

Meant to be a secure military property management system using QR codes and blockchain verification. (mobile-first with offline support).  Where QR codes or barcodes are affixed to property which, when scanned, prompt a transfer request to be sent to the current person assigned that property.     (And Transfer Workflow =    - QR code scanning for transfers with mobile, transfer approved or denied

  • transfer “sent” to the backend where sawtooth blockchain uses PoET to verify and record the transfer.)

QR codes or barcodes are generated only by “officer” users (RBAC) and are linked to a digital twin of a piece of property

About

No description, website, or topics provided.

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published