API AccessAccess dataset files directly from scripts, code, or AI agents.
Browse dataset files
Access dataset files directly from scripts, code, or AI agents.
Each file has a stable URL (r-link) that you can use directly in scripts, apps, or AI agents. These URLs are permanent and safe to hardcode.
Start with these files โ they give you everything you need to understand and access the dataset.
- 1. Fetch datapackage.json to inspect schema and resources
- 2. Download data resources listed in datapackage.json
- 3. Read README.md for full context
Data Previews
Bitcoin Daily Prices
Schema
| name | type | description | title |
|---|---|---|---|
| date | date | Date of price data (YYYY-MM-DD) | Date |
| datetime | datetime | Full timestamp of price data | DateTime |
| price | number | Bitcoin price in US Dollars | Price (USD) |
| market_cap | integer | Total market capitalization in USD | Market Capitalization |
| volume | integer | 24-hour trading volume in USD | 24h Trading Volume |
Data Files
| File | Description | Size | Last modified | Download |
|---|---|---|---|---|
bitcoin-prices | Daily Bitcoin price, market cap, and volume data | 24.3 kB | 3 months ago | bitcoin-prices |
| Files | Size | Format | Created | Updated | License | Source |
|---|---|---|---|---|---|---|
| 1 | 24.3 kB | csv | 7 months ago | 7 months ago | Creative Commons Attribution 4.0 International | CoinGecko API |
๐ช Bitcoin Price Data Package
An automated Data Package for collecting, processing, and visualizing Bitcoin price data using the Frictionless Data standard.
๐ Dataset Overview
This Data Package provides comprehensive Bitcoin market data including:
- Daily price data (USD)
- Market capitalization
- 24-hour trading volume
- Historical trends (1 year lookback)
Data is automatically collected from the CoinGecko API and follows the Frictionless Data Package standard.
๐ Quick Start
Prerequisites
pip install -r scripts/requirements.txt
Data Collection
# Collect Bitcoin price data
python scripts/collect_bitcoin_data.py
# Generate visualizations
python scripts/create_visualizations.py
Validation
# Validate the Data Package
frictionless validate datapackage.json
๐ Project Structure
bitcoin-price-datapackage/
โโโ datapackage.json # Data Package descriptor
โโโ README.md # This file
โโโ data/
โ โโโ raw/ # Raw API responses
โ โ โโโ current_price_*.json
โ โ โโโ historical_data_*.json
โ โโโ processed/ # Cleaned CSV data
โ โโโ bitcoin_prices.csv # Main dataset
โโโ scripts/
โ โโโ collect_bitcoin_data.py # Data collection script
โ โโโ create_visualizations.py # Visualization generator
โ โโโ requirements.txt # Python dependencies
โโโ visualizations/
โโโ bitcoin_dashboard.html # Interactive dashboard
โโโ bitcoin_price_chart.html # Price & volume chart
โโโ bitcoin_market_cap.html # Market cap chart
โโโ bitcoin_gauge.html # Current price gauge
๐ Data Schema
| Field | Type | Description |
|---|---|---|
date | date | Date of price data (YYYY-MM-DD) |
datetime | datetime | Full timestamp with time |
price | number | Bitcoin price in USD |
market_cap | integer | Total market capitalization in USD |
volume | integer | 24-hour trading volume in USD |
๐จ Visualizations
The package includes several interactive visualizations:
-
๐ Main Dashboard (
bitcoin_dashboard.html)- Combined price, volume, and market cap charts
- Key statistics and metrics
- Real-time price gauge
-
๐ Price Chart (
bitcoin_price_chart.html)- Daily price trends
- Trading volume overlay
-
๐ฐ Market Cap Chart (
bitcoin_market_cap.html)- Market capitalization over time
-
โฑ๏ธ Price Gauge (
bitcoin_gauge.html)- Current price vs yearly range
๐ Automation
Manual Updates
python scripts/collect_bitcoin_data.py
python scripts/create_visualizations.py
Scheduled Updates
Using Cron (Linux/Mac)
# Add to crontab for daily updates at 9 AM
0 9 * * * cd /path/to/bitcoin-price-datapackage && python scripts/collect_bitcoin_data.py
Using GitHub Actions
Create .github/workflows/update-data.yml:
name: Update Bitcoin Data
on:
schedule:
- cron: "0 9 * * *" # Daily at 9 AM UTC
workflow_dispatch:
jobs:
update-data:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.9"
- name: Install dependencies
run: pip install -r scripts/requirements.txt
- name: Collect data
run: python scripts/collect_bitcoin_data.py
- name: Create visualizations
run: python scripts/create_visualizations.py
- name: Commit changes
run: |
git config --local user.email "action@github.com"
git config --local user.name "GitHub Action"
git add -A
git commit -m "Update Bitcoin data $(date)" || exit 0
git push
๐ Data Sources
- CoinGecko API: https://api.coingecko.com/api/v3
- Free tier: 10-30 calls/minute
- No API key required
- Comprehensive cryptocurrency data
๐ Data Quality
Validation Checks
- โ Schema validation with Frictionless
- โ Data type verification
- โ Missing value handling
- โ Timestamp consistency
- โ Price range validation
Error Handling
- Network timeout handling
- API rate limit respect
- Data consistency checks
- Graceful error recovery
๐ License
This Data Package is made available under the Creative Commons Attribution 4.0 International License.
Data Sources License
- CoinGecko API data is used under their Terms of Service
๐ค Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Run validation:
frictionless validate datapackage.json - Submit a pull request
๐ Support
- Issues: Create an issue on GitHub
- Data Package Spec: https://datapackage.org/
- CoinGecko API: https://www.coingecko.com/en/api
๐ท๏ธ Version History
- v1.0.0: Initial release with daily price collection and basic visualizations
Created as part of the Datopian tech onboarding process - turning awesome data into Frictionless Data Packages! ๐