--- title: "Introduction" url: https://docs.catalyst.zoho.com/en/tutorials/document-processor/nodejs/introduction/ description: "Create a React web app that detects and extracts data from input documents, and processes it using OCR, Barcode Scanner, and Identity Scanner of Zia Services." last_updated: 2026-08-17T12:16:04Z service: All Services type: tutorial related_links: - name: "Advanced I/O Function" url: /en/serverless/help/functions/advanced-io/ - name: "Catalyst Extensions" url: /en/catalyst-extensions/vs-code-extension/introduction/ --- # Document Processor ### Introduction This tutorial will help you build a Document Processor React application in Catalyst that implements AI/ML capabilities to detect, process, and extract specific data from scanned documents and images. The Document Processor application built in this tutorial will be able to do the following: 1. Recognize handwritten or printed text in scanned digital documents or images, and convert them to a machine-readable format (a JSON response). 2. Scan printed barcodes (1D and 2D formats), and extract the encoded information in them. 3. Scan and process digital ID proof such as PAN, AADHAAR, and other documents including passbooks and cheques, and extract the field records from those documents. Also note that PAN and AADHAAR are identity proof documents specific to the India region. > **Note :** PAN and AADHAAR are identity proof documents specific to the India region. The client application will appear as follows: ![local-hosted](https://catalyst-docs-development.zohostratus.in/images/tutorials/document-processor/nodejs/local-hosted.webp) You can access a working application and test its functionality here: [Try the App!](https://ziaservices.catalystserverlessapp.com) The Document Processor application leverages the following Catalyst services and their components: 1. **[Catalyst Serverless](https://docs.catalyst.zoho.com/en/serverless/getting-started/introduction/)** - **[Functions](https://docs.catalyst.zoho.com/en/serverless/help/functions/introduction/)**: We will be coding an [Advanced I/O function](https://docs.catalyst.zoho.com/en/serverless/help/functions/advanced-io/) in **Node.js**. It contains the logic that enables you to process and extract data from the input documents or images. We have leveraged the [Catalyst Zia Services Node.js SDK](https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/zia-services/ocr/) package for this purpose. 2. **[Catalyst Cloud Scale](https://docs.catalyst.zoho.com/en/cloud-scale/getting-started/introduction/)** - **[Web Client Hosting](https://docs.catalyst.zoho.com/en/cloud-scale/help/web-client-hosting/introduction/)** : We will be creating and initializing the web client as a [React application](https://docs.catalyst.zoho.com/en/cli/v1/initialize-resources/initialize-client/#react-applications) in this tutorial using in-built Catalyst plugins. The client application will be hosted in Catalyst using Web Client Hosting. 3. **[Catalyst Zia Services](https://docs.catalyst.zoho.com/en/zia-services/getting-started/introduction/)** - **[OCR](https://docs.catalyst.zoho.com/en/zia-services/help/optical-character-recognition/introduction/)** : This component helps you detect and recognize textual characters in your input digital documents or images, and convert them to machine-encoded text. Catalyst OCR can recognize texts in [10 major languages](https://docs.catalyst.zoho.com/en/zia-services/help/optical-character-recognition/key-concepts/#supported-languages). - **[Barcode Scanner](https://docs.catalyst.zoho.com/en/zia-services/help/barcode-scanner/introduction/)** : This component allows you to scan barcodes and extract the encoded information in them. You can learn more about the supported barcode formats from [this page](https://docs.catalyst.zoho.com/en/zia-services/help/barcode-scanner/key-concepts/#encoding-data-in-a-barcode). - **[Identity Scanner](https://docs.catalyst.zoho.com/en/zia-services/help/identity-scanner/introduction/)** : The Identity Scanner component enables you to scan and extract data from common ID proof documents such as AADHAAR cards, PAN cards, bank passbooks, and cheques. Refer to [this page](https://docs.catalyst.zoho.com/en/zia-services/help/identity-scanner/key-concepts/#model-types) to learn more about the supported languages, file formats, and file sizes. We will use the [Catalyst web console](https://console.catalyst.zoho.com/) and the [Catalyst Command Line Interface (CLI)](https://docs.catalyst.zoho.com/en/cli/v1/cli-command-reference/) to build this application. You can fetch the tutorial's code from this git repo. You will have to replace the files in the project directory as directed in the [function](https://docs.catalyst.zoho.com/en/tutorials/document-processor/nodejs/configure-advancedio) and [client configuration](https://docs.catalyst.zoho.com/en/tutorials/document-processor/nodejs/configure-client) sections of this tutorial.