All Projects → sismics → Docs

sismics / Docs

Licence: gpl-2.0
Lightweight document management system packed with all the features you can expect from big expensive solutions

Programming Languages

javascript
184084 projects - #8 most used programming language
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Docs

Server
☁️ Nextcloud server, a safe home for all your data
Stars: ✭ 17,723 (+2043.05%)
Mutual labels:  self-hosting, cloud, file-sharing, sharing, open-source, enterprise
Core
☁️ ownCloud web server core (Files, DAV, etc.)
Stars: ✭ 7,599 (+818.86%)
Mutual labels:  self-hosting, file-sharing, sharing, enterprise
craft-text-detector
Packaged, Pytorch-based, easy to use, cross-platform version of the CRAFT text detector
Stars: ✭ 151 (-81.74%)
Mutual labels:  workflow, ocr, document
Mediacms
MediaCMS is a modern, fully featured open source video and media CMS, written in Python/Django and React, featuring a REST API.
Stars: ✭ 313 (-62.15%)
Mutual labels:  sharing, open-source
Online
Collabora Online is a collaborative online office suite based on LibreOffice technology. This is also the source for the Collabora Office apps for iOS and Android.
Stars: ✭ 278 (-66.38%)
Mutual labels:  open-source, enterprise
Gofi
Gofi (gəʊfi:) means Go file indexer.
Stars: ✭ 291 (-64.81%)
Mutual labels:  cloud, file-sharing
Opensearchserver
Open-source Enterprise Grade Search Engine Software
Stars: ✭ 408 (-50.67%)
Mutual labels:  ocr, enterprise
Document Management System
OpenKM is a Open Source Document Management System
Stars: ✭ 373 (-54.9%)
Mutual labels:  document, workflow
Midway
🍔 A Node.js Serverless Framework for front-end/full-stack developers. Build the application for next decade. Works on AWS, Alibaba Cloud, Tencent Cloud and traditional VM/Container. Super easy integrate with React and Vue. 🌈
Stars: ✭ 5,080 (+514.27%)
Mutual labels:  cloud, enterprise
Bpmn Engine
BPMN 2.0 execution engine. Open source javascript workflow engine.
Stars: ✭ 519 (-37.24%)
Mutual labels:  open-source, workflow
Onionshare
Securely and anonymously share files, host websites, and chat with friends using the Tor network
Stars: ✭ 4,961 (+499.88%)
Mutual labels:  file-sharing, open-source
Impress
Enterprise application server for Node.js and Metarhia private cloud ⚡
Stars: ✭ 634 (-23.34%)
Mutual labels:  cloud, enterprise
Arvados
An open source platform for managing and analyzing biomedical big data
Stars: ✭ 274 (-66.87%)
Mutual labels:  cloud, workflow
Orangehrm
OrangeHRM is a comprehensive Human Resource Management (HRM) System that captures all the essential functionalities required for any enterprise.
Stars: ✭ 274 (-66.87%)
Mutual labels:  open-source, enterprise
Knime Core
KNIME Analytics Platform
Stars: ✭ 302 (-63.48%)
Mutual labels:  open-source, workflow
scanbot-sdk-example-ionic
Scanbot scanner SDK example app for Ionic with Cordova.
Stars: ✭ 24 (-97.1%)
Mutual labels:  ocr, document
Cipi
An Open Source Control Panel for your Cloud! Deploy and manage LEMP apps in one click!
Stars: ✭ 376 (-54.53%)
Mutual labels:  cloud, open-source
Cromwell
Scientific workflow engine designed for simplicity & scalability. Trivially transition between one off use cases to massive scale production environments
Stars: ✭ 655 (-20.8%)
Mutual labels:  cloud, workflow
scanbot-sdk-example-ios
No description or website provided.
Stars: ✭ 17 (-97.94%)
Mutual labels:  ocr, document
transfer-sh
Node.js CLI tool for easy file sharing using Transfer.sh
Stars: ✭ 24 (-97.1%)
Mutual labels:  sharing, file-sharing

Teedy

License: GPL v2 Build Status

Teedy is an open source, lightweight document management system for individuals and businesses.


Sponsor this project if you use and appreciate it!


New!

Demo

A demo is available at demo.teedy.io

  • Guest login is enabled with read access on all documents
  • "admin" login with "admin" password
  • "demo" login with "password" password

Features

  • Responsive user interface
  • Optical character recognition
  • LDAP authentication New!
  • Support image, PDF, ODT, DOCX, PPTX files
  • Video file support
  • Flexible search engine with suggestions and highlighting
  • Full text search in all supported files
  • All Dublin Core metadata
  • Custom user-defined metadata New!
  • Workflow system New!
  • 256-bit AES encryption of stored files
  • File versioning New!
  • Tag system with nesting
  • Import document from email (EML format)
  • Automatic inbox scanning and importing
  • User/group permission system
  • 2-factor authentication
  • Hierarchical groups
  • Audit log
  • Comments
  • Storage quota per user
  • Document sharing by URL
  • RESTful Web API
  • Webhooks to trigger external service
  • Fully featured Android client
  • Bulk files importer (single or scan mode)
  • Tested to one million documents

Install with Docker

A preconfigured Docker image is available, including OCR and media conversion tools, listening on port 8080. The database is an embedded H2 database but PostgreSQL is also supported for more performance.

The default admin password is "admin". Don't forget to change it before going to production.

  • Master branch, can be unstable. Not recommended for production use: sismics/docs:latest
  • Latest stable version: sismics/docs:v1.9

The data directory is /data. Don't forget to mount a volume on it.

To build external URL, the server is expecting a DOCS_BASE_URL environment variable (for example https://teedy.mycompany.com)

Available environment variables

  • General

    • DOCS_BASE_URL: The base url used by the application. Generated url's will be using this as base.
    • DOCS_GLOBAL_QUOTA: Defines the default quota applying to all users.
    • DOCS_BCRYPT_WORK: Defines the work factor which is used for password hashing. The default is 10. This value may be 4...31 including 4 and 31. The specified value will be used for all new users and users changing their password. Be aware that setting this factor to high can heavily impact login and user creation performance.
  • Admin

    • DOCS_ADMIN_EMAIL_INIT: Defines the e-mail-address the admin user should have upon initialization.
    • DOCS_ADMIN_PASSWORD_INIT: Defines the password the admin user should have upon initialization. Needs to be a bcrypt hash. Be aware that $ within the hash have to be escaped with a second $.
  • Database

    • DATABASE_URL: The jdbc connection string to be used by hibernate.
    • DATABASE_USER: The user which should be used for the database connection.
    • DATABASE_PASSWORD: The password to be used for the database connection.
  • Language

    • DOCS_DEFAULT_LANGUAGE: The language which will be used as default. Currently supported values are:
      • eng, fra, ita, deu, spa, por, pol, rus, ukr, ara, hin, chi_sim, chi_tra, jpn, tha, kor, nld, tur, heb, hun, fin, swe, lav, dan
  • E-Mail

    • DOCS_SMTP_HOSTNAME: Hostname of the SMTP-Server to be used by Teedy.
    • DOCS_SMTP_PORT: The port which should be used.
    • DOCS_SMTP_USERNAME: The username to be used.
    • DOCS_SMTP_PASSWORD: The password to be used.

Examples

In the following examples some passwords are exposed in cleartext. This was done in order to keep the examples simple. We strongly encourage you to use variables with an .env file or other means to securely store your passwords.

Using the internal database

version: '3'
services:
# Teedy Application
  teedy-server:
    image: sismics/docs:v1.9
    restart: unless-stopped
    ports:
      # Map internal port to host
      - 8080:8080
    environment:
      # Base url to be used
      DOCS_BASE_URL: "https://docs.example.com"
      # Set the admin email
      DOCS_ADMIN_EMAIL_INIT: "[email protected]"
      # Set the admin password (in this example: "superSecure")
      DOCS_ADMIN_PASSWORD_INIT: "$$2a$$05$$PcMNUbJvsk7QHFSfEIDaIOjk1VI9/E7IPjTKx.jkjPxkx2EOKSoPS"
    volumes:
      - ./docs/data:/data

Using PostgreSQL

version: '3'
services:
# Teedy Application
  teedy-server:
    image: sismics/docs:v1.9
    restart: unless-stopped
    ports:
      # Map internal port to host
      - 8080:8080
    environment:
      # Base url to be used
      DOCS_BASE_URL: "https://docs.example.com"
      # Set the admin email
      DOCS_ADMIN_EMAIL_INIT: "[email protected]"
      # Set the admin password (in this example: "superSecure")
      DOCS_ADMIN_PASSWORD_INIT: "$$2a$$05$$PcMNUbJvsk7QHFSfEIDaIOjk1VI9/E7IPjTKx.jkjPxkx2EOKSoPS"
      # Setup the database connection. "teedy-db" is the hostname
      # and "teedy" is the name of the database the application
      # will connect to.
      DATABASE_URL: "jdbc:postgresql://teedy-db:5432/teedy"
      DATABASE_USER: "teedy_db_user"
      DATABASE_PASSWORD: "teedy_db_password"
    volumes:
      - ./docs/data:/data
    networks:
      - docker-internal
      - internet
    depends_on:
      - teedy-db

# DB for Teedy
  teedy-db:
    image: postgres:13.1-alpine
    restart: unless-stopped
    expose:
      - 5432
    environment:
      POSTGRES_USER: "teedy_db_user"
      POSTGRES_PASSWORD: "teedy_db_password"
      POSTGRES_DB: "teedy"
    volumes:
      - ./docs/db:/var/lib/postgresql/data
    networks:
      - docker-internal

networks:
  # Network without internet access. The db does not need
  # access to the host network.
  docker-internal:
    driver: bridge
    internal: true
  internet:
    driver: bridge

Manual installation

Requirements

  • Java 11
  • Tesseract 4 for OCR
  • ffmpeg for video thumbnails
  • mediainfo for video metadata extraction
  • A webapp server like Jetty or Tomcat

Download

The latest release is downloadable here: https://github.com/sismics/docs/releases in WAR format. The default admin password is "admin". Don't forget to change it before going to production.

How to build Teedy from the sources

Prerequisites: JDK 11, Maven 3, NPM, Grunt, Tesseract 4

Teedy is organized in several Maven modules:

  • docs-core
  • docs-web
  • docs-web-common

First off, clone the repository: git clone git://github.com/sismics/docs.git or download the sources from GitHub.

Launch the build

From the root directory:

mvn clean -DskipTests install

Run a stand-alone version

From the docs-web directory:

mvn jetty:run

Build a .war to deploy to your servlet container

From the docs-web directory:

mvn -Pprod -DskipTests clean install

You will get your deployable WAR in the docs-web/target directory.

Contributing

All contributions are more than welcomed. Contributions may close an issue, fix a bug (reported or not reported), improve the existing code, add new feature, and so on.

The master branch is the default and base branch for the project. It is used for development and all Pull Requests should go there.

License

Teedy is released under the terms of the GPL license. See COPYING for more information or see http://opensource.org/licenses/GPL-2.0.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].