Skip to main content

A Document library

Project description

DOCLIB

A document library that integrates with multiple data sources (like digiLocker, Google Drive, local storage etc.) and storage services (like S3 and Google Cloud Storage) and uploads data from these data sources to the chosen storage service. It can be integrated with any Django Project.

TECHNOLOGIES

  • Python
  • Django: Django builds better web apps with less code
  • DRF: A powerful and flexible toolkit for building Rest APIs with Django
  • Frontend: HTML5, Bootstrap, JS
  • Architecture of the Library Architecture

CURRENT SUPPORTED SERVICES

DATA SOURCES

STORAGE SERVICES

QUICKSTART

Install the package

pip install django-doclib

Before running the server, make sure Directory looks like

demo_proj
├── credentials_dir
|      └── credentials_gcs.json
├── media
└── django_project_folder
    ├── settings.py
    ├── asgi.py
    ├── .env
    ├── wsgi.py
    └── urls.py

Follow the steps

  1. Add doclib and rest_framework to your INSTALLED_APPS setting like this

    INSTALLED_APPS = [
    ...
    'doclib',
    'rest_framework',
    ]

  2. Include the doclib URLconf in your project urls.py like this

    path('doclib/', include('doclib.urls'))

  3. Provide MEDIA_ROOT in your project settings.py, something like this

    MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

  4. For integrating with Google Drive

    • Make a directory with name credentials_dir at the project root level

    • Put the google api client secret json file with name as credentials_gcs.json in credentials_dir directory For getting the API and Developer keys, visit here.

    • Make a .env file in the project folder directory (at the project settings.py level) and put the Browser API keys obtained from the Google API Console like this (don’t use quotations around strings)

      DEVELOPER_KEY=##################
      CLIENT_ID=##################
      APP_ID=##################

  5. For setting the environment variables, follow this

    • Add these below lines in the project settings.py

      import environ
      env = environ.Env()
      environ.Env.read_env()
      
    • For setting the above API Keys put these below lines in the settings.py

      DEVELOPER_KEY = env("DEVELOPER_KEY")
      CLIENT_ID     = env("CLIENT_ID")
      APP_ID        = env("APP_ID")
      
  6. Run python manage.py migrate to create the doclib models.

  7. Start the development server and visit http://localhost:8000/doclib/ to access the doclib.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-doclib-1.2.2.tar.gz (47.0 kB view details)

Uploaded Source

Built Distribution

django_doclib-1.2.2-py3-none-any.whl (51.7 kB view details)

Uploaded Python 3

File details

Details for the file django-doclib-1.2.2.tar.gz.

File metadata

  • Download URL: django-doclib-1.2.2.tar.gz
  • Upload date:
  • Size: 47.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.9.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.6.9

File hashes

Hashes for django-doclib-1.2.2.tar.gz
Algorithm Hash digest
SHA256 10037a16b5832dbb547b72849a3405b30a6c658da888c9e0123cb29a0aa3ce4b
MD5 945b77fbde913f581c7680969fbce3a7
BLAKE2b-256 ed025ebdc0d36848883020adfba4df8749a6946e246cf323b845e44fd57fc037

See more details on using hashes here.

File details

Details for the file django_doclib-1.2.2-py3-none-any.whl.

File metadata

  • Download URL: django_doclib-1.2.2-py3-none-any.whl
  • Upload date:
  • Size: 51.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.9.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.6.9

File hashes

Hashes for django_doclib-1.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4fac6d853bc5056d3a5af527131966068ebdbeb59c991d743e6213b71f4d2834
MD5 9d7ca48705942b6e549e411fb8ff0dde
BLAKE2b-256 1628e87bbc965f753b33ba8acb922469781af61ef2986fea1a21adebdc86976f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page