Skip to content

feat: migrate GIF support to Klipy, add robust picker, and implement …#4

Open
abdullah-dev5 wants to merge 1 commit into
masterfrom
feature/day-9-api-integration-weather-giphy-abdullah
Open

feat: migrate GIF support to Klipy, add robust picker, and implement …#4
abdullah-dev5 wants to merge 1 commit into
masterfrom
feature/day-9-api-integration-weather-giphy-abdullah

Conversation

@abdullah-dev5

Copy link
Copy Markdown
Owner

…advanced weather with geo/IP fallback (D9T1&T2)

  • Replaced Giphy integration with Klipy for GIF search and selection in notes.
    • Triggered by slash command (/klipy ) in note content.
    • Supports pagination (8 GIFs per page) with next/prev navigation.
    • Robust error handling for failed searches, invalid keywords, and API rate limits.
    • Custom toast notifications with adjustable duration for user feedback.
  • Updated note form to support GIF insertion:
    • Stores gif_url and gif_slug in form data.
    • Inserts GIF markdown at cursor position and cleans up /klipy command.
  • Improved user experience with graceful UI recovery and clear feedback.

Weather feature:

  • Added weather widget to dashboard, showing current weather for the user’s location.
  • Uses browser geolocation API to fetch precise latitude/longitude for weather data.
  • If geolocation is denied or unavailable, falls back to IP-based location lookup.
  • Fetches weather data from a public weather API using the determined coordinates or IP.
  • Displays temperature, weather condition, and location name in a user-friendly format.
  • Handles all error cases gracefully, showing fallback messages if weather cannot be determined.
  • Ensures fast, non-blocking UI updates and a seamless experience regardless of user permissions.

…advanced weather with geo/IP fallback (D9T1&T2)

- Replaced Giphy integration with Klipy for GIF search and selection in notes.
  - Triggered by slash command (/klipy <keyword>) in note content.
  - Supports pagination (8 GIFs per page) with next/prev navigation.
  - Robust error handling for failed searches, invalid keywords, and API rate limits.
  - Custom toast notifications with adjustable duration for user feedback.
- Updated note form to support GIF insertion:
  - Stores gif_url and gif_slug in form data.
  - Inserts GIF markdown at cursor position and cleans up /klipy command.
- Improved user experience with graceful UI recovery and clear feedback.

Weather feature:
- Added weather widget to dashboard, showing current weather for the user’s location.
- Uses browser geolocation API to fetch precise latitude/longitude for weather data.
- If geolocation is denied or unavailable, falls back to IP-based location lookup.
- Fetches weather data from a public weather API using the determined coordinates or IP.
- Displays temperature, weather condition, and location name in a user-friendly format.
- Handles all error cases gracefully, showing fallback messages if weather cannot be determined.
- Ensures fast, non-blocking UI updates and a seamless experience regardless of user permissions.
Comment thread app/controllers/weathers_controller.ts
Comment thread app/models/note.ts
Comment thread app/models/note.ts
})
declare labels: ManyToMany<typeof Label>

>>>>>>> 5be7f5d (feat: migrate GIF support to Klipy, add robust picker, and implement advanced weather with geo/IP fallback (D9T1&T2))

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lol, atleast you should remove merge conflict

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants