* fix: use owner/repo format for project badges
Updates badge URLs to use GitHub-style owner/repo format (e.g., "hackclub/hackatime")
instead of project names. This ensures compatibility with external badge services that
expect repository paths.
Changes:
- Add Repository#full_path method to get owner/repo format
- Update settings controller to pass both display names and repo paths
- Update Badges component to display project names but use repo paths in URLs
* fix: improve user lookup in API v1 stats endpoint
Use the robust lookup_user method for username parameter in the /api/v1/stats endpoint
to ensure consistent user lookup across all API endpoints. This properly handles Slack
UIDs (HCA IDs), numeric user IDs, and usernames in the correct priority order.
* fix: reduce clutter on new user homepage
Simplify the new user experience by:
- Removing redundant "Hello friend" text from setup notice (header already provides context)
- Hiding GitHub link banner when setup notice is shown to focus user on primary action
This reduces visual clutter and helps new users focus on completing setup first.
* fix: enable full app layout for new OAuth application page
Remove layout=false directive that was preventing the app header and navigation
from appearing on the new OAuth application creation page.
* fix: add antigravity editor to docs
Add documentation for Antigravity, a VSCode fork from Google with built-in AI
features. Includes setup instructions for tracking time with Hackatime using the
WakaTime extension.
* fix: improve stat card subtitle positioning
Remove absolute positioning from subtitle text to allow it to flow naturally after
the main value. This prevents the subtitle from being pushed to the bottom when
other cards have longer content.
* fix: align settings action buttons to card end on larger screens
Remove width constraint from footer to allow action buttons to align to the right
edge of the full card width instead of being constrained to a narrower container.
* fix: improve heartbeat importer visibility on light themes
Update import provider cards and radio buttons to have better contrast on light themes:
- Use bg-surface-100 instead of bg-darker for better card visibility
- Increase radio button border thickness and use darker border color
- Add hover and focus states for better interactivity
* Split up settings controller + perf + goal display
* Make stat card subtitles larger
* Fix AG + VS Code
* Remove Shiba refs
* Bundle update
* Fix data export + Capybara
* Continue?
* A ton of system tests :D + test cleanup
* More system tests
* Add placeholder keys for tests?
* Get rid of the double-query!
* Speed up CI Chrome setup by avoiding snap installs
* Pin CI Chrome version to reduce system test flakiness
* Stabilize integrations settings system test interaction
* Add banned_users endpoint to AdminController and update routes
* Merge branch 'main' into addingGetBanAdminAPI_Endpoint
* move function out of private
* docs
* re swaggerize
* feat: add API documentation and CI checks
- Add Rswag for automated API documentation generation
- Add Swagger specs for all endpoints
- Add CI step to enforce that swagger.yaml stays in sync with code
- Add static test keys in seeds.rb for easier testing
- Update AGENTS.md and README.md to support this
* Merge branch 'main' of https://github.com/deployor/hackatime
* Merge branch 'main' into main
* Deprecations! Yay! :)
* It was wan addicent i swear linter! Dont hurt me
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Copilot..... we love you! Also this project is open and so are api docs meant to be if another AI reads ts!
* Merge branch 'main' of https://github.com/deployor/hackatime
* Merge branch 'main' into main
* Merge branch 'main' into main
* Update app/controllers/api/admin/v1/admin_controller.rb
If you say so
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update spec/requests/api/v1/my_spec.rb
I guessss?
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Failed my own CI wow.... EMBARRASSINGGGG
* Merge branch 'main' into main
* Merge branch 'main' into main
* clarify wording on internal/revoke
* Merge branch 'main' into main
* update swagger docs