Personal APIs: Difference between revisions
Appearance
Created page with "= Personal APIs = ''Data aggregation system for self-quantification and AI context enhancement'' == Architecture Overview == Built on [https://nuxt.com/ Nuxt] / [https://nitro.unjs.io/ Nitro] with basic caching layer. All endpoints return JSON and support CORS for cross-origin requests from mobile apps and AI assistants. Base URL: `https://ejfox.com/api/` === Core Philosophy === * '''AI Context Enhancement''' - Provide rich personal data to language models * '''Self..." |
No edit summary |
||
Line 24: | Line 24: | ||
=== Productivity & Learning === | === Productivity & Learning === | ||
* [https://mastodon-posts.ejfox.tools/ mastodon-posts.ejfox.tools] most recent posts from @[email protected] | |||
* '''[https://ejfox.com/api/rescuetime /api/rescuetime]''' - [https://www.rescuetime.com/ RescueTime] productivity analytics | * '''[https://ejfox.com/api/rescuetime /api/rescuetime]''' - [https://www.rescuetime.com/ RescueTime] productivity analytics | ||
* '''[https://ejfox.com/api/leetcode /api/leetcode]''' - [https://leetcode.com/ LeetCode] problem-solving progress | * '''[https://ejfox.com/api/leetcode /api/leetcode]''' - [https://leetcode.com/ LeetCode] problem-solving progress |
Latest revision as of 16:05, 3 June 2025
Personal APIs
Data aggregation system for self-quantification and AI context enhancement
Architecture Overview
Built on Nuxt / Nitro with basic caching layer. All endpoints return JSON and support CORS for cross-origin requests from mobile apps and AI assistants.
Base URL: `https://ejfox.com/api/`
Core Philosophy
- AI Context Enhancement - Provide rich personal data to language models
- Self-Quantification - Track KPIs aligned with personal improvement goals
- Data Sovereignty - Own your data instead of just feeding the surveillance machine
- API-First Design - Choose services that offer data egress and avoid data silos
Active Endpoints
Health & Fitness
- /api/health - Apple Health aggregated metrics
- /api/health-raw - Raw health data for deeper analysis
Tracks: daily steps, exercise minutes, stand hours, distance, heart rate variability
Productivity & Learning
- mastodon-posts.ejfox.tools most recent posts from @[email protected]
- /api/rescuetime - RescueTime productivity analytics
- /api/leetcode - LeetCode problem-solving progress
- /api/monkeytype - MonkeyType typing speed metrics
- /api/chess - Chess.com rating and puzzle stats
Development
- /api/github - GitHub contribution patterns and repo activity
- /api/stats - Aggregated development metrics
Creative & Content
- /api/photos - Personal photo platform statistics
- /api/lastfm - Last.fm music listening history (10+ years)
- /api/words-this-month - Writing output tracking
Predictions & Analysis
- /api/predictions - Personal forecasting and goal tracking
Technical Implementation
Data Sources
- Apple Health - via HealthKit exports and processing
- GitHub API - commit patterns, repo activity, contribution graphs
- RescueTime API - time tracking and productivity metrics
- Chess.com API - game history and ratings
- Last.fm API - scrobbling data going back 10+ years
- LeetCode scraping - problem completion and difficulty tracking
- MonkeyType - typing test results and WPM progression
Caching Strategy
Most endpoints implement intelligent caching:
- Health data - Updates every 4 hours
- GitHub activity - Updates every hour
- Music listening - Updates every 30 minutes
- Static metrics - Cached for 24 hours
Response Format
All endpoints return JSON with consistent structure: ```json {
"data": { /* endpoint-specific data */ }, "meta": { "cached_at": "2025-05-28T10:30:00Z", "source": "api_name", "updated": "recent" | "stale" }
}