document processing system
This repository contains the processing server for a document processing system. It receives documents from a Windows application, processes them using OCR services, and maps extracted data to predefined layouts. After processing, the data is sent back for user verification and correction. Once finalized, the server forwards the document based on configured rules, such as saving it locally, uploading via FTP, or sending it to an external API. This repo focuses on the processing server, which interacts with separate repositories for the Windows application and admin dashboard.
The component diagram of the system is provided below.
To clone and run this application, you will need Git, Node.js and PostgreSQL.
To set up and run the application independently, follow steps 1 through 4 below. After initial setup, step 5 covers ongoing development.
For a complete setup, first follow the instructions in the si-docflow-admin repository. Then, proceed with steps 1, 2 and 5 below for the processing server.
# Clone the repository
$ git clone https://github.com/kanitakadusic/si-docflow-server.git
# Navigate to the project directory
$ cd si-docflow-server
# Install all dependencies
$ npm install
Create a .env file in the project root with required environment variables. See env-setup.md for details.
# Compile TypeScript to JavaScript
$ npm run build
# Load and export environment variables
$ npm run vars
# Create database tables and insert seed data
$ npm run seed
# Perform initial setup tasks
$ npm run bootstrap
# Start the application
$ npm run serve
# For further development
$ npm run dev
👉 Click here to watch the local setup video (4 minutes 39 seconds)
👉 Click here to watch the Railway deployment video (10 minutes 26 seconds)
