eBird Dataset Data is a reusable Django app for loading data from the eBird Basic Dataset, v1.14, into a database.
The Cornell Laboratory of Ornithology in Ithaca, New York runs the eBird database which collects observations of birds from all over the world, and publishes them on (eBird.org)[https://ebird.org]. The data is also available via the eBird Basic Dataset which is intended for for analysis and modelling. This project contains a loader and models to take data from a download (CSV) file and load it into a database. From there you can analyse the data with python, jupyter notebooks, or build a web site.
To get started, you will need to sign up for an eBird account, then request access, which usually takes 7 days to be reviewed and approved.
You can use either pip or uv to download the package from PyPI and install it into a virtualenv:
pip install ebird-dataset-dataor:
uv add ebird-dataset-dataUpdate INSTALLED_APPS in your Django setting:
INSTALLED_APPS = [
...
ebird.dataset.data
]Finally, run the migrations to create the tables:
python manage.py migrateIf you check out the code from the repository there is a fully functioning Django site. It contains pages for checklists, observations and species, where you can browse the records or search by location, observer. date. etc. The Django Admin lets you browse and edit the records in the database.
git clone git@github.com:StuartMacKay/ebird-dataset-data.git
cd ebird-api-dataCreate the virtual environment:
uv venvActivate it:
source .venv/bin/activateInstall the requirements:
uv syncRun the database migrations:
python manage.py migrateCreate a user:
python manage.py createsuperuserRun the demo:
python manage.py runserverNow, either visit the site, http:localhost:8000/, or log into the Django Admin, http:localhost:8000/admin to browse the tables.
- Documentation: https://ebird-dataset-data.readthedocs.io/en/latest/
- Issues: https://todo.sr.ht/~smackay/ebird-dataset-data
- Repository: https://git.sr.ht/~smackay/ebird-dataset-data
- Announcements: https://lists.sr.ht/~smackay/ebirders-announce
- Discussions: https://lists.sr.ht/~smackay/ebirders-discuss
- Development: https://lists.sr.ht/~smackay/ebirders-develop
The repository is also mirrored on Github:
The app is tested on Python 3.10+, and officially supports Django 4.2 LTS, 5.0, 5.1, and 5.2 LTS.
eBird Dataset Data is released under the terms of the MIT license.