Commit Graph

813 Commits

Author SHA1 Message Date
Ricardo
9a0c1a5111 feat: fetch contributions data from Indiekit API
Enables Contributions/PRs section when using Indiekit backend

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 18:16:08 +01:00
Ricardo
f5c19727e1 feat: reorder GitHub page sections
New order:
1. Featured Projects
2. Recent Commits
3. Contributions/PRs
4. My Repositories
5. Starred Repositories

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 18:05:11 +01:00
Ricardo
fbb7653dc4 fix: add fallback for commits when GitHub Events API lacks details
GitHub's Events API no longer includes commit details in PushEvent
payloads. This adds a fallback that fetches commits directly from
the user's recently pushed repositories when events don't have them.

- Try events API first (existing behavior)
- If no commits, fetch from user's top 5 recently pushed repos
- Sort combined results by date

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 17:09:04 +01:00
Ricardo
a1520b0299 docs: add CLAUDE.md with submodule sync instructions
Ensures Claude Code knows to update the indiekit-cloudron submodule
after making changes to this theme repo.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 16:55:34 +01:00
Ricardo
f7db31ac27 fix: support camelCase property names from Indiekit Eleventy preset
The Indiekit Eleventy preset uses camelcaseKeys to convert frontmatter
properties (e.g., bookmark-of → bookmarkOf), but templates expected
underscore-separated names (bookmark_of).

Changes:
- Support both camelCase and underscore property names in all templates
- Update collections to filter on both property name formats
- Include interaction URLs (bookmarks, likes, replies, reposts) in
  Bridgy syndication content for proper social media posting

Fixes bookmark URLs not appearing on posts or in syndicated content.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 16:34:20 +01:00
Ricardo
96182cb1e4 fix: comprehensive mobile responsive design audit
- Make all headings responsive (text-2xl sm:text-3xl pattern)
- Make all section headings responsive (text-xl sm:text-2xl)
- Add responsive margins (mb-6 sm:mb-8 pattern)
- Fix flex layouts to stack on mobile (flex-col sm:flex-row)
- Make images responsive (w-20 sm:w-24 pattern)
- Add responsive padding (p-4 sm:p-6)
- Improve grid gaps for mobile (gap-3 sm:gap-4)
- Add CSS utilities for table overflow and touch scrolling
- Restyle 404 page with proper responsive design

Files updated: 22 template and CSS files across all pages

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 15:48:23 +01:00
Ricardo
3c21393989 fix: improve redirect map file discovery
- Fix fallback logic (empty object is truthy)
- Try multiple paths for Docker and local dev
- Add debug logging for file discovery

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 15:13:11 +01:00
Ricardo
46f4559fe3 feat: add Last.fm integration to listening page
- Add lastfmActivity.js data fetcher for Indiekit Last.fm API
- Add listening.njk combined page with Funkwhale + Last.fm data
- Source filter tabs, combined stats, recent listens timeline
- Loved tracks section for Last.fm

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 14:59:39 +01:00
Ricardo
a316d3148d feat: add legacy webmention recovery from old URLs
- Add urlAliases.js to parse redirect maps and build old→new URL mappings
- Enhance webmentionsForUrl filter to check legacy URLs (micro.blog, Known/WP)
- Update webmentions.njk to pass urlAliases data
- Add webmention-debug.njk page at /debug/webmentions/

This recovers webmentions sent to old URL structures:
- micro.blog: /YYYY/MM/DD/slug.html
- Known/WordPress: /YYYY/slug

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 14:57:29 +01:00
Ricardo
f32565a2be feat: add unified /listening page and rename /funkwhale in nav
Navigation now includes both /listening (combined Last.fm + Funkwhale)
and /funkwhale (Funkwhale-only). Sidebar widget links to combined page.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 13:52:33 +01:00
Ricardo
f711278890 fix: disable gitignore for Eleventy processing
content/ is in .gitignore because it's a symlink at runtime,
but Eleventy 3.x respects .gitignore by default which was
preventing content files from being processed.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 13:14:59 +01:00
Ricardo
6ba66515cb docs: comprehensive IndieWeb-focused README with plugin integration guide 2026-01-24 12:15:14 +01:00
Ricardo
2b225197b4 Initial commit: Indiekit Eleventy theme 2026-01-24 12:13:34 +01:00