Skip to content

chirag127/ScannerFlow-Document-Capture-And-Archive-Mobile-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

65 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ScannerFlow: Document Capture & Archive Mobile App

ScannerFlow Hero Banner

Build Status Code Coverage React Native Expo TypeScript Biome Linter License GitHub stars

Star ⭐ this Repo to support its development!


ScannerFlow is a high-fidelity document scanning and digital archiving mobile app built with React Native & Expo. It provides a production-ready, cross-platform solution for iOS and Android, featuring advanced image processing, OCR, and a seamless user experience architected with Feature-Sliced Design.

This repository represents a modern, scalable, and maintainable approach to mobile application development, enforcing FAANG-level engineering standards.

Table of Contents

πŸ›οΈ Architecture

ScannerFlow strictly adheres to Feature-Sliced Design (FSD), a professional architectural methodology for frontend applications. This structure ensures high cohesion, low coupling, and clear separation of concerns, making the codebase scalable and easy to maintain.

sh src/ β”œβ”€β”€ app/ # 1. App-level logic (routing, providers, global styles) β”œβ”€β”€ processes/ # 2. Multi-screen business processes (e.g., user onboarding) β”œβ”€β”€ pages/ # 3. Full-screen components (e.g., HomePage, ScanPage) β”‚ β”œβ”€β”€ HomePage/ β”‚ └── ScanPage/ β”œβ”€β”€ features/ # 4. Business logic features (e.g., DocumentScan, OcrProcessing) β”‚ β”œβ”€β”€ DocumentScan/ β”‚ └── OcrProcessing/ β”œβ”€β”€ entities/ # 5. Core business entities (e.g., Document model and UI) β”‚ └── Document/ β”œβ”€β”€ shared/ # 6. Reusable, non-business logic code (UI kit, libs, API) β”‚ β”œβ”€β”€ api/ β”‚ β”œβ”€β”€ config/ β”‚ β”œβ”€β”€ lib/ β”‚ └── ui/ # Reusable UI components (Button, Card, etc.) └── tsconfig.json

✨ Key Features

  • Cross-Platform: Single codebase for both iOS and Android using React Native and Expo.
  • High-Fidelity Scanning: Advanced image processing for clear, crisp document captures.
  • OCR Integration: On-device or cloud-based Optical Character Recognition to extract text from documents.
  • Digital Archiving: Organize, tag, and search scanned documents efficiently.
  • Modern Stack: Built with TypeScript, ensuring type safety and developer productivity.
  • Scalable Architecture: Feature-Sliced Design enables parallel development and simplified maintenance.
  • High-Performance Tooling: Utilizes Biome for ultra-fast linting/formatting and Vitest for testing.

πŸš€ Getting Started

Follow these instructions to get the development environment running.

Prerequisites:

  • Node.js (LTS version)
  • Yarn or NPM
  • Expo Go app on your mobile device or an emulator/simulator

Installation:

  1. Clone the repository:

    bash git clone https://github.com/chirag127/ScannerFlow-Document-Capture-And-Archive-Mobile-App.git cd ScannerFlow-Document-Capture-And-Archive-Mobile-App

  2. Install dependencies:

    bash npm install

  3. Run the application:

    bash npx expo start

    Scan the QR code with the Expo Go app on your device, or press a for Android Emulator or i for iOS Simulator.

πŸ› οΈ Development Scripts

Script Description
npm start Starts the Metro bundler for development.
npm run android Runs the app on a connected Android device/emulator.
npm run ios Runs the app on the iOS simulator.
npm run web Runs the app in a web browser.
npm test Executes tests using Vitest.
npm run lint Lints the codebase with Biome.
npm run format Formats the codebase with Biome.

πŸ—οΈ Core Principles

  • SOLID: Adherence to the five fundamental principles of object-oriented design.
  • DRY (Don't Repeat Yourself): Reusable code is abstracted into the shared layer.
  • YAGNI (You Ain't Gonna Need It): Features are implemented only when necessary to avoid bloat.

πŸ€– AI Agent Directives

SYSTEM: APEX TECHNICAL AUTHORITY (DECEMBER 2025 EDITION)

1. IDENTITY & PRIME DIRECTIVE

Role: You are a Senior Principal Software Architect and Master Technical Copywriter with 40+ years of elite industry experience. You operate with absolute precision, enforcing FAANG-level standards. Context: Current Date is December 2025. You are building for the 2026 standard. Output Standard: Deliver EXECUTION-ONLY results. No plans, no "reporting"β€”only executed code, updated docs, and applied fixes. Philosophy: "Zero-Defect, High-Velocity, Future-Proof."

2. CONTEXT-AWARE APEX TECH STACKS (LATE 2025 STANDARDS)

This repository, ScannerFlow-Document-Capture-And-Archive-Mobile-App, is a TypeScript-based mobile application. Apply the corresponding Apex Toolchain.

  • PRIMARY SCENARIO: MOBILE APP (TypeScript / React Native)

    • Stack: This project leverages React Native (with the Expo framework), TypeScript 6.x (Strict Mode), Zustand (for simple, scalable state management), and TanStack Query (for robust server-state management and data fetching).
    • Architecture: Strictly adheres to Feature-Sliced Design (FSD), enforcing a clear hierarchy from shared libraries up to app-level composition. This modularizes features like DocumentScan and OcrProcessing for maximum scalability and maintainability.
    • Tooling: Biome is mandated for all linting and formatting, ensuring sub-second feedback loops and consistent code style. Vitest is the standard for unit and integration testing. E2E testing should utilize Maestro for its simplicity and reliability in the mobile context.
    • UI/UX: The component library is built within shared/ui, following atomic design principles. All components must be themeable, accessible, and performant.
  • VERIFICATION COMMANDS (MANDATORY):

    • Run npm run lint before every commit to ensure code quality.
    • Run npm test to verify that all unit and integration tests are passing.
    • All new features must be developed within their designated FSD slice (features/ or entities/).
    • No business logic is permitted within the pages/ or app/ layers.

🀝 Contributing

Contributions are welcome! Please read the CONTRIBUTING.md file for guidelines on how to submit pull requests.

πŸ“œ License

This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License - see the LICENSE file for details.

About

High-fidelity document scanning & digital archiving mobile app built with React Native & Expo. Features advanced image processing, OCR, and a seamless UX for iOS & Android. Production-ready with a feature-sliced architecture.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors