{"id":30104229,"url":"https://github.com/jfilter/timetiles","last_synced_at":"2025-08-09T22:33:12.568Z","repository":{"id":296747841,"uuid":"990530774","full_name":"jfilter/timetiles","owner":"jfilter","description":"WIP","archived":false,"fork":false,"pushed_at":"2025-07-26T22:36:55.000Z","size":1380,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-26T23:02:17.794Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://jfilter.github.io/timetiles/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jfilter.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-26T08:55:32.000Z","updated_at":"2025-07-26T22:36:58.000Z","dependencies_parsed_at":"2025-06-02T05:19:27.027Z","dependency_job_id":"57f326a0-2b67-44ac-8962-1530abc09a02","html_url":"https://github.com/jfilter/timetiles","commit_stats":null,"previous_names":["jfilter/timetiles"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jfilter/timetiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jfilter%2Ftimetiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jfilter%2Ftimetiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jfilter%2Ftimetiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jfilter%2Ftimetiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jfilter","download_url":"https://codeload.github.com/jfilter/timetiles/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jfilter%2Ftimetiles/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269649268,"owners_count":24453499,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-09T02:00:10.424Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-09T22:31:50.727Z","updated_at":"2025-08-09T22:33:12.546Z","avatar_url":"https://github.com/jfilter.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TimeTiles\n\nWelcome to the TimeTiles monorepo!\n\n**TimeTiles is an open-source platform for creating interactive chronicles of geospatial events.** Designed for journalists, researchers, activists, and the general public, TimeTiles transforms datasets with location, time, and metadata into compelling, explorable stories that anyone can understand.\n\nThis project is built with Next.js, Payload CMS, and PostgreSQL/PostGIS for spatial data management and content administration.\n\nThis project is funded by the Prototype Fund.\n\n## 🚀 Key Features\n\n### 📤 Event Data Import System\n\nA comprehensive event data import system with real-time processing and automatic geocoding:\n\n- **Multi-format Support**: Upload CSV and Excel files (.xlsx, .xls)\n- **Automatic Geocoding**: Address geocoding with Google Maps API and OpenStreetMap fallback\n- **Real-time Progress**: Live updates with detailed processing stages\n- **Public Access**: Full functionality for unauthenticated users with rate limiting\n- **Batch Processing**: Efficient handling of large datasets\n- **Smart Caching**: Intelligent geocoding cache to reduce API calls\n\n#### Quick Start Example\n\n```bash\n# Upload a CSV file via API\ncurl -X POST http://localhost:3000/api/import/upload \\\n  -F \"file=@events.csv\" \\\n  -F \"catalogId=your-catalog-id\"\n\n# Track progress\ncurl http://localhost:3000/api/import/{importId}/progress\n```\n\nOr use the web interface at `/import` for drag-and-drop file uploads.\n\n**📚 Detailed Documentation**: [`apps/web/docs/IMPORT_SYSTEM.md`](apps/web/docs/IMPORT_SYSTEM.md)\n\n## 📖 Documentation\n\nFor full documentation, setup instructions, and guides, please visit our documentation site:\n\n👉 [TimeTiles Documentation](./apps/docs)\n\n### Quick Links\n\n- [Development Setup](apps/docs/pages/development/setup.mdx)\n- [Architecture \u0026 Tech Stack](apps/docs/pages/architecture.mdx) - Complete technology overview and design decisions\n- [Import System Documentation](apps/web/docs/IMPORT_SYSTEM.md)\n- [API Reference](apps/web/docs/API.md)\n- [Troubleshooting Guide](apps/web/docs/TROUBLESHOOTING.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjfilter%2Ftimetiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjfilter%2Ftimetiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjfilter%2Ftimetiles/lists"}