Giter Club home page Giter Club logo

docmanager's Introduction

Transparency Toolkit

Transparency Toolkit is data collection, archiving, and analytics software for journalists, activists, and human rights researchers. This repository is the central place to download and run all of our tools.

Installation Instructions

  1. Download Transparency Toolkit: git clone https://github.com/TransparencyToolkit/TransparencyToolkit.git

  2. Install Docker and Docker Compose: See the instructions for your operating system.

  3. Run Transparency Toolkit: docker-compose up (takes a few minutes to run)

  4. Use Transparency Toolkit: Go to http://0.0.0.0:3333 in your browser. From there, you can collect data, OCR documents, and use archiving and analytical tools.

If you encounter any difficulties in setup, have feature requests or ideas for projects, or are interested in collaborating or contributing, please contact us.

docmanager's People

Contributors

bnvk avatar shidash avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

docmanager's Issues

Delete Document Removes File

Deleting a document should also delete the file as long as it isn't associated with any other documents too (check for this). This behavior may need to be changed depending on how distributed storage works.

Deduplicate Dataspecs

Currently there are duplicate copies of dataspecs to match what the publication step generates. Deduplicate these.

Track Deleted Documents

Track documents that have been deleted (maybe by hash?) so that they can also be removed on public instance.

Move Instance-Specific Dataspecs

Remove the instance-specific dataspecs from the DM repository and move them to another repository with instructions on how to use them. These will probably still be used from time to time, but we should move towards users creating custom dataspecs via the UI on the hosted system rather than having to work with the raw JSON files.

Set Catalyst Defaults

Add the default values for fields that should be searched for each document type by default to the dataspec.

Remove Deleted Documents

Deleted documents (maybe since last batch) tracked with #10 should be removed from public instance when republish is run. Since they are deleted, it is difficult to know if they match the conditions for publication. So perhaps all deleted should be removed each time publish is run.

Upgrade to Elasticsearch 7

This is a major upgrade because document types were removed (and these are used heavily within TT). Most likely the document types should be separate indexes or in the same index but managed as part of the document ID.

rake command failing

Hi, after running the rake db:create db:migrate, I get the following error:

rake aborted!
NoMethodError: undefined method client= for Elasticsearch::Persistence:Module
/opt/DocManager/config/initializers/elasticsearch.rb:2:in <main>

Just wondering if this is an issue due to version or am I missing anything in previous steps. Thanks for all your help.

Check if document already published

Currently the publish function only sends documents updated since it was last run. But someone could choose a different set of documents or fields to publish. So, instead, the following should be checked-

  1. Publication date
  2. Document published
  3. Fields document published with

The publication date should be used if the document was already published WITH the same fields. If it hasn't been updated and is same field combo, document should not be published.

If it doesn't match and the document matches publication query, it should be resent. If the document wasn't published, it should be republished.

Document IDs not Tied to Title

Currently, changing the title of a document or other field used in the ID on pre-publication archive may result in creation of a second document on the public instance. The document ID should either be passed to the public instance (and constant) or a based on a non-user-changeable (but unique) field.

Use Language in Project Spec

Ensure that-

  1. The language for the index is saved with the project spec
  2. This language is actually set as the index language

Probably there also needs to be a function to change the index language when this updates, but this may be rare. More likely is someone will want a second index for another language.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.