Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kopoli/paperless
Scan, OCR and display. Paperless office.
https://github.com/kopoli/paperless
golang ocr vue vuejs2
Last synced: about 2 months ago
JSON representation
Scan, OCR and display. Paperless office.
- Host: GitHub
- URL: https://github.com/kopoli/paperless
- Owner: kopoli
- License: mit
- Created: 2015-09-06T18:11:21.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2020-05-31T06:38:40.000Z (over 4 years ago)
- Last Synced: 2024-06-20T13:33:58.615Z (7 months ago)
- Topics: golang, ocr, vue, vuejs2
- Language: Go
- Size: 5.55 MB
- Stars: 13
- Watchers: 4
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.org
- License: LICENSE
Awesome Lists containing this project
README
* Paperless office interface
Reads the texts of images and makes them browsable and searchable via HTTP.
** Requirements
On an Ubuntu system run the following to install prerequisites for the OCR
and processing:#+begin_src shell
sudo apt-get install sqlite3 tesseract-ocr-osd tesseract-ocr-fin tesseract-ocr imagemagick unpaper
#+end_srcAlso Golang is required. Tested with go 1.8.
** Building the application
Clone this repository and run the following command:
#+begin_src shell
go build
#+end_src** Usage
Start the web server with the following:
#+begin_src shell
./paperless
#+end_srcThis starts a web-server to the port 8078. See the '--help' argument for
command line optionsFile uploading happens with a browser. There is the '+' button which opens
a panel where one can drag-and-drop images to OCR.** Running this inside Docker
If you have Docker properly set up, you can run this inside docker with the
following:#+begin_src shell
cd docker
./run.sh
#+end_srcThis should start an Ubuntu 16.04 Docker instance where the program is
running.** Uploader application
In the uploader directory there is a go-application that can be used to
send batches of tagged images to the server.Build it with the following:
#+begin_src shell
cd uploader
go build
#+end_srcExample run:
#+begin_src shell
./uploader -t important,dontremove http://localhost:8078 important-01.jpg important-02.jpg
#+end_srcUsage is printed with the --help argument.
** Developing the frontend
The frontend development requires Nodejs and NPM. Therefore the
environment can be set up with:#+begin_src shell
cd web/paperless-frontend
npm install
#+end_srcTo set up a running environment do the following:
1. Start the paperless -application to get the backend running in port 8078.
2. Start the webpack-dev-server with:
#+begin_src shell
cd web/paperless-frontend
npm run serve
#+end_src3. This will start the frontend to port 8080 that connects to the backend
in port 8078.The frontend is embedded in the final binary. To update the changes from
the frontend development files to the binary, do the following:1. Install the 'esc' file embedder, so the esc can be found in the $PATH.
#+begin_src shell
go get -i github.com/mjibson/esc
#+end_src2. Build the dist-package of the frontend:
#+begin_src shell
cd web/paperless-frontend
npm run build
#+end_src3. Regenerate the lib/web-generated.go with:
#+begin_src shell
cd lib
go generate
#+end_src4. Build normally, test and commit the generated files.
** License
MIT license