Catalpa's instance of the OIPA IATI XML parser
1.1K
OIPA extracts all published IATI XML files from the IATI Registry and makes them available in a normalised PostgreSQL database, that you can access using a RESTful API.
IATI is a global aid transparency standard and it makes information about aid spending easier to access, re-use and understand the underlying data using a unified open standard. You can find more about the IATI XML standard at: www.iatistandard.org
| Name | Recommended version |
|---|---|
| Python | 3.6.5 |
| PostgreSQL | 9.6 |
| Redis | 4.0.x |
| PostGIS | See: installing PostGIS |
| SpaciaLite (for tests) | See: installing SpatiaLite |
| Diskspace | 80GB minumum |
If you have Docker installed and want to be able to use OIPA right away, run:
docker-compose up
this will start a containerised (development) environment using Django's development server. Visit 0.0.0.0:8000 on your local browser. The superuser login credentials are oipa / oipa.
If you don't have Docker:
virtualenv <name> -p python3 to create a virtual environmentsource env/bin/activate to activate the virtual environmentpip install -r requirements.txtOIPA/.env file as follows:
your_database_nameyour_db_useryour_db_passwordpython manage.py migratepython manage.py runserverredis-serverpython manage.py createsuperuserpython manage.py supervisorHappy Hunting!
For more detailed information, see the install documentation
Full documentation (which, at this point, needs an update) on installing, running and using OIPA can be found at docs.oipa.nl
Yes please! We are mainly looking for coders to help on the project. If you are a coder feel free to Fork the repository and send us Pull requests!
Python already has clear PEP 8 code style guidelines, so it's difficult to add something to it, but there are certain key points to follow when contributing:
git+https://github.com/Supervisor/supervisor@ec495be4e28c694af1e41514e08c03cf6f1496c8#egg=supervisor), so if the library is updated, it doesn't break everythingPytest-django is used to run tests. This will be installed automatically when the project is set up.
To run tests, from the top level directory of the project, run pytest OIPA/. If you are in the same directory where manage.py is, only running pytest will be sufficient. Refer to Pytest-django documentations for details.
Tip: to be able to use debuggers (f. ex. ipdb) with pytest, run it with -s option (to turn off capturing test output).
Testing / code quality settings can be found in the setup.cfg file. Test coverage settings (for pytest-cov plugin) can be found at .coveragerc file.
Content type
Image
Digest
Size
589.3 MB
Last updated
over 7 years ago
docker pull catalpaio/oipa