Giter Site home page Giter Site logo

fossabot / climatedatarescue Goto Github PK

View Code? Open in Web Editor NEW

This project forked from open-data-rescue/climate-data-rescue

0.0 1.0 0.0 44.9 MB

ClimateDataRescue is inspired by the Scribe platform, a generalised transcription tool by the Zooniverse.

Ruby 28.28% Dockerfile 0.04% JavaScript 1.94% CSS 2.76% HTML 25.68% Shell 0.08% TSQL 41.21%

climatedatarescue's Introduction

DRAW - Data Rescue: Archives and Weather

Build Status Travis (Github) pipeline status gitlab Code Climate Coverage Status Coveralls coverage report gitlab FOSSA Status

Contents

  • Introduction
  • Development Setup
    • Requirements
    • Installation
    • Configuration
    • Running the application
  • User Guide
  • Data Model
  • Attribution and Acknowlegements

Introduction

This application seeks to aid in the digitization of paper records through the crowd-sourced transcription of scanned image files, particularly documents ill-suited for Optical Character Recognition (OCR). It specializes in recovering data stored in a highly structured format. The app fully supports multilingual localization of the user interface and the data schema organization (field labels, help texts, etc).

Administrators are given an interface with which to define their data collection schemas, and users are provided a mechanism to transcribe data contained on the page and indicate its position.

Development Setup

Software Requirements

  • docker
  • docker-compose

Project Installation

Installing required software

docker
docker-compose

Setup

Docker Containers

Navigate to the project directory in the terminal.

Ensure you are at the application folder and run the following script to extract the initial files and build the docker containers:

docker/build.sh

Start the database container (detached):

docker-compose up -d db

Wait 30s and check if the db container has finished initializing: It will read (healthy) when it is finished. You may need to run the following command a couple more times until you see it read healthy.

docker ps

Create the databases, load the application schema, and initialize with the seed data:

docker-compose run app rake db:setup

Add app secrets:

You need two entries in the ENV for the app, SECRET_KEY_BASE and SECRET_TOKEN.

Run the following command twice to generate secure tokens.

docker-compose run app bundle exec rake secret

Add an entry to the docker/.env.app.conffile for each key identified above, and set the values as the results of the above two rake secret commands.

Start the app container

docker-compose up app

Open another terminal and verify that the docker containers have started and that the local host's ports are mapped to the containers' ports:

docker ps

You should be able to verify that two containers draw-app and draw-db have started, and their ports are being mapped to the host machine.

Environment Variables

The environment configuration file can be found in application.rb. A sample application.yml file can be found in <rails_app_directory>\config\application-sample.yml. Once you enter in all the required values, you can rename it to application.yml.

Starting and Stopping the application

By now, the app server should already be running and accessible at localhost:3000 in your browser.

To stop the app when running in current terminal window:

CTRL/CMD + C

To start the app:

docker-compose up app

You should be able to log into the application as the admin user with the information defined in the seeds.rb file.

User Guide

Forthcoming.

Data Model

Forthcoming.

Attribution and Acknowlegements

This project was created in 2015 as my final independent study project in Geography at McGill University with Renee Sieber from the departments of Geography and Environmental Studies as my supervisor. It was developed in coordination with Victoria Slonosky in her efforts to recover data from thousands of pages of historical weather observations.

This project was inspired by the Scribe Framework.

License

FOSSA Status

climatedatarescue's People

Contributors

arfon avatar benlaurie avatar benwbrum avatar fossabot avatar jinxingster avatar rsmithlal avatar stuartlynn avatar tdb93 avatar ttfnrob avatar

Watchers

 avatar

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.