Skip to main content

A tide storage tool and API.

Project description

A tool to acquire, store, and serve tide data. Designed to have pluggable backends for multiple tide services. So far NOAA is the only source.

Installation

Use pip to install from PyPI:

pip install django-tides

Add django_tides to your settings.py file:

INSTALLED_APPS = (
    ...
    'django_tides',
    ...
)

Additional Requirements

beautifulsoup4 to parse the XML served by NOAA

django-tastypie to generate the API

GeoDjango is used to store point data for tide stations. I use PostGIS as my database backend.

Acquiring Data

django-tides comes with a management function:

./manage.py update_tides

This will pull all tide data for all available backends. Use this with care as it will use a lot of bandwidth.

Endpoints

django-tides exposes two endpoints for now:

/tides/api/water-level/

Provides the water level at a specific station over time. Example:

/tides/api/water-level/?format=json&time__gte=2013-07-04%2000:00&time__lte=2013-07-15%2000:00&limit=10&station__source_id=8447355

/tides/api/station/

Provides a list of stations within proximity of a given point. Example:

/tides/api/station/?format=json&limit=10&offset=0&lat=41.77873679916478&lon=-70.47317504882812

Contributing

Think this needs something else? To contribute to django-tides create a fork on Bitbucket. Clone your fork, make some changes, and submit a pull request.

Bugs are great contributions too! Feel free to add an issue on Bitbucket.

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-tides-0.1.tar.gz (7.0 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page