Skip to content

TobiFank/HandScript

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

HandScript

License: Custom Non-Commercial

HandScript is an intelligent handwriting recognition system that transforms handwritten documents into editable digital text, learning and adapting to your unique handwriting style.

HandScript Dashboard

Features

πŸ” Smart Document Organization

  • Organize documents into projects for easy management
  • Drag-and-drop multiple page upload
  • Intuitive page reordering
  • Export to PDF or Word formats
  • Built-in document preview

Document Management

πŸ€– Personalized Recognition

  • Individual writer profiles with custom recognition models
  • Continuous learning from your handwriting
  • Support for English and German text
  • Performance tracking and analytics
  • Visual recognition insights

Writer Profiles

✏️ Interactive Training

  • Simple training process with your handwriting samples
  • Real-time feedback on recognition quality
  • Visual line detection and segmentation
  • Easy verification workflow
  • Progress tracking and model improvement

Training Interface

πŸ“‹ Page Management

  • Drag-and-drop reordering of pages
  • Visual thumbnail previews
  • Quick page status overview
  • Batch processing options
  • Writer assignment per page

Page Management

πŸ“ Powerful Editing

  • Side-by-side comparison view
  • Line-by-line verification
  • Rich text formatting options
  • Batch processing capabilities
  • Visual text line highlighting

Editor Interface

πŸ‘€ Document Preview

  • Clean, formatted text preview
  • One-click export to PDF or DOCX
  • Page navigation
  • Print-ready formatting
  • Document statistics overview

Document Preview

System Requirements

Recommended Hardware

  • NVIDIA GPU with 8GB+ VRAM
  • 16GB RAM
  • 15GB free storage space

Software

  • Docker and Docker Compose
  • NVIDIA drivers for GPU support
  • Modern web browser (Chrome/Firefox/Safari recommended)

Quick Start

  1. Clone the repository:
git clone https://github.com/TobiFank/HandScript.git
  1. Create environment file:
cat > .env << EOL
DEVICE=cuda
DEFAULT_MODEL_ENGLISH=microsoft/trocr-large-handwritten
DEFAULT_MODEL_GERMAN=fhswf/TrOCR_german_handwritten
EOL
  1. Start the application: First time setup:
docker-compose up --build

Subsequent runs:

docker-compose up
  1. Open your browser and navigate to:
http://localhost:3000

Usage Guide

Setting Up Projects

  1. Click "New Project" on the dashboard
  2. Enter project name and optional description
  3. Upload documents to your project
  4. Organize pages within documents

Creating Writer Profiles

  1. Navigate to Writers section
  2. Click "Add Writer" to create a new profile
  3. Select language (English/German)
  4. Add training samples to improve recognition

Training Process

  1. Upload handwriting samples
  2. Verify recognized text
  3. Monitor training progress
  4. Track accuracy improvements
  5. Export processed documents

Document Processing

  1. Upload document pages
  2. Assign writer profile
  3. Process pages automatically
  4. Review and edit recognized text
  5. Export final document

Perfect For

  • ✨ Researchers digitizing handwritten notes
  • πŸ“š Teachers processing student submissions
  • πŸ“‘ Professionals managing handwritten documents
  • πŸ›οΈ Archivists converting historical documents
  • πŸ“ Anyone needing to digitize handwritten text

Support My Work

If you find HandScript useful and want to help me keep developing innovative, open-source tools, consider supporting me by buying me a token. Your support helps cover development costs and allows me to create more projects like this!

Buy me a token!

Or, scan the QR code below to contribute:

Buy me a token QR Code

Thank you for your support! It truly makes a difference.

Directory Structure

handscript/
β”œβ”€β”€ backend/          # FastAPI backend application
β”œβ”€β”€ frontend/         # React frontend application
β”œβ”€β”€ docker/          # Docker configuration files
β”œβ”€β”€ storage/         # Data storage directory
β”‚   β”œβ”€β”€ images/      # Uploaded document images
β”‚   β”œβ”€β”€ models/      # Trained writer models
β”‚   └── exports/     # Exported documents
└── docs/            # Documentation and images

Architecture

Handscript Architecture

Development

Backend Development

cd backend
poetry install
poetry run python run.py

Frontend Development

cd frontend
yarn install
yarn dev

License

This project is licensed under a Custom Non-Commercial, Contribution-Based License.

Key Points:

  • Private, non-commercial use of this tool is permitted.
  • Modifications or enhancements must be contributed to this project (e.g., through pull requests) to be approved by the project maintainer.
  • Commercial use and creating derivative works for redistribution outside of this project are prohibited.
  • Contact for Commercial Use: Companies or individuals interested in commercial use should contact Tobias Fankhauser on LinkedIn for case-by-case consideration.

For full details, please refer to the LICENSE file.

The following components are licensed under different terms:

For more details, refer to the included license files and documentation.

Acknowledgments

  • Microsoft's TrOCR model for base recognition capabilities
  • FHSWF's TrOCR German model for additional language support
  • Hugging Face Transformers library
  • FastAPI and React for the application framework
  • The open source community for various supporting libraries

Contributing

We welcome contributions that enhance the tool! Please submit a pull request for any proposed changes or additions. All contributions must comply with the Custom Non-Commercial, Contribution-Based License outlined in the LICENSE file.

Contributor License Agreement (CLA)

By contributing, you agree to the terms outlined in the CLA. This agreement ensures that all contributions can be used in any future version of the project, including potential commercial versions. Please read the CLA before submitting your pull request.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published