Skip to content
fraunhofer-imlPublic

About

No description, website, or topics provided.

Resources

Stars

3 stars

Watchers

0 watching

Forks

Latest commit

 

History

34 Commits

Folders and files

Repository files navigation

Stars Forks Watchers Contributors Commit Activity Last Commit Issues License


Table of Contents
  1. 📚 About The Project
  2. 🚀 Getting Started
  3. 🤝 Contributing
  4. 📜 License
  5. 📬 Contact
  6. 🙏 Acknowledgments

📚 About The Project

📄 Description

Instascan provides a way to digitize and save documents that are available in paper form. The documents are scanned as images and stored on a data server. At the same time, an analysis of the documents is triggered, which extracts the values of the individual fields. To achieve this, AI systems are used that generate a complete data object by specifying the fields to be filled in. To ensure that the data objects created are correct, a way is also provided to view and subsequently edit the data via a front end.

🛠️ Built With

  • Angular Framework for building dynamic web applications
  • Docker Platform for containerizing and deploying applications efficiently
  • ESLint Utility for linting and enforcing code quality in JavaScript and TypeScript
  • Jest JavaScript testing framework
  • S3-compatible object storage
  • NestJS Node.js framework for building scalable server-side applications
  • Nx Build system for monorepos
  • PostgreSQL Relational database management system known for reliability and performance
  • Prettier Code formatter for consistent style
  • TypeOrm ORM for database management
  • RabbitMQ Message broker for distributed systems, supporting AMQP
  • RxJS Library for managing asynchronous events
  • Swagger Tools for designing and documenting APIs
  • TypeScript Strongly typed programming language that enhances JavaScript
  • Python Versatile, high-level programming language known for its readability and ease of use

🏗️ Components Overview

The project consists of the following components:

  1. Backend for frontend (bff)
  • Exposes endpoints for the frontend application.
  • Handles all incoming HTTP requests and routes them to the appropriate services via AMQP.
  • Takes care of the preparation of the data for the Angular frontend.
  1. Storage Service (storage-service)
  • Stores incoming documents on a S3 server.
  • Saves information on the documents and the analysis result in a Postgres database.
  • Can be addressed via AMQP by the bff and the dcoument-analysation-service.
  • Allows you to edit data records to correct errors in the analysis.
  1. Document Analyzation Service (document-analyzation-service)
  • Accepts the images sent via the bff.
  • Forwards the document including the appropriate data fields and the necessary prompts to an AI service.
  • As soon as the response from the AI service (in the form of the filled data object) is available, it is forwarded via AMQP to the storage service to be saved.
  1. Frontend (frontend)
  • Allows users to scan or upload new documents.

(back to top)

🚀 Getting Started

To set up and run Instascan locally, please consult the chapter Installation and Tutorial in our documentation. This chapter provides step-by-step instructions to guide you through the process of installing, configuring and running Instascan on your local machine.

(back to top)

🤝 Contributing

🌟 Getting Involved

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/amazing-feature)
  3. Commit your Changes (git commit -m 'Add some amazing-feature')
  4. Push to the Branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

(back to top)

📜 License

Licensed under the Apache License 2.0. See LICENSE for details.

(back to top)

📬 Contact

Tim Chilla: tim.chilla@iml.fraunhofer.de

Lukas Grieger: lukas.grieger@iml.fraunhofer.de

(back to top)

🙏 Acknowledgments

  • Best-README-Template provided inspiration and structure for creating this README file
  • Img Shields enabled the creation of customizable and visually appealing badges for this project, which is included unmodified in this readme file under the terms of the CC0 1.0 Universal

(back to top)

About

No description, website, or topics provided.

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages