slovensko-digital/harvester.ecosystem

View on GitHub
README.md

Summary

Maintainability
Test Coverage
# Harvester

[![Slovensko.Digital CI](https://github.com/slovensko-digital/harvester.ecosystem/workflows/Slovensko.Digital%20CI/badge.svg)](https://github.com/slovensko-digital/harvester.ecosystem/actions/workflows/slovensko_digital_ci.yml)
[![Maintainability](https://api.codeclimate.com/v1/badges/659f7d03994b8ae099cc/maintainability)](https://codeclimate.com/github/slovensko-digital/harvester.ecosystem)
[![Test Coverage](https://api.codeclimate.com/v1/badges/659f7d03994b8ae099cc/test_coverage)](https://codeclimate.com/github/slovensko-digital/harvester.ecosystem)

Harvester is an open-source application that downloads data from various public sources and pushes data to [ekosystem.slovensko.digital](https://ekosystem.slovensko.digital/). 

## Supported data sources

Currently, Harvester supports the following data-sources:

- [ITMS2014+](https://www.itms2014.sk/) 
- [Institutions with public e-desk](https://data.gov.sk/dataset/upvs-institucie-so-schrankou)

Currently, there are data sources in [ekosystem.slovensko.digital](https://ekosystem.slovensko.digital/)
which are not ingested by Harvester. The corresponding code hasn't been open-sourced yet.
 

## Development  

Harvester is a Ruby-on-Rails application. However, there is no web process present. The application
runs as a backend worker/scheduler and uses the Rails framework to enforce coding rules for the project. 

To get the Harvester dependencies running (db, etc), 
we have prepared a [Docker Compose](https://docs.docker.com/compose/) file for you. 
You can start the dependencies with `docker-compose up`.

To run and test the application while developing:

- Prepare the environment with `bin/setup`
- Ensure that all tests pass: `rake spec`
- Start the worker with `foreman start worker` 
- Run a selected job with rake
- Check that the corresponding database tables have been filled in

## Contributing

Feel free to contribute other datasets / scrapers or improvements. See [issues](https://github.com/slovensko-digital/ekosystem/issues) if you want to help, request a feature or file a bug. Join us on our [public slack channel](http://slack.slovensko.digital/) if you want to talk live.