Skip to content

Conversation

@abhishree-k
Copy link
Contributor

@abhishree-k abhishree-k commented Jan 25, 2026

🔗 Related Issue

🎯 Rationale

This PR adds a smooth, animated cursor trail effect with pink hearts (💕) to all pages of the TalkHeal application. The trail follows mouse movement with 12 animated hearts, creating a warm and engaging visual experience that aligns with the mental wellness theme of the app.

The implementation ensures consistent behavior across all Streamlit pages while maintaining good performance and avoiding duplicate script initialization.

📝 Summary of Changes

🎯 Cursor Trail Implementation

12 pink heart elements following cursor movement
Smooth animation using requestAnimationFrame
Easing-based trailing motion
Global initialization flag to prevent duplicate injection
Works across all Streamlit pages

🌟 Visual Effects

Pink heart symbols with glow and shadow
Rotation and scaling animation
Opacity fade-out gradient
High z-index to stay visible without blocking UI

🔧 Technical Details

JavaScript injected via streamlit.components.v1.html()
Script targets window.parent.document to bypass Streamlit iframe isolation
Frame-rate controlled animation loop
Lightweight DOM updates for minimal performance impact
No additional Python or JS dependencies added

✅ Testing

Test Coverage

Verified cursor trail appears on all pages
Confirmed smooth animation without UI lag
Tested reruns in Streamlit — no duplicate trails created
Checked browser console — no errors
Tested on Chrome and Edge

📚 Documentation

More engaging and friendly UI
Visual consistency across the app
No interference with existing content or interactions

  • Code comments added/updated
  • README updated (if needed)
  • API documentation updated (if needed)
  • Migration guide provided (for breaking changes)

🔄 Breaking Changes

  • This PR contains breaking changes
  • Migration guide provided
  • Version updated appropriately

🎨 User-Facing Changes

Frontend Changes

  • UI components modified
  • New user interactions added
  • Styling/theme changes

Backend/API Changes

  • New endpoints added
  • Existing endpoints modified
  • Response format changes

📋 Checklist

Code Quality

  • Code follows project style guidelines
  • Self-review completed
  • No console.log or debug statements left
  • Error handling implemented appropriately

Review Readiness

  • PR title is descriptive and follows conventions
  • PR description is complete and accurate
  • Commits are atomic and well-documented
  • Branch is up to date with target branch

Security & Performance

  • No sensitive information exposed
  • Performance impact considered
  • Security implications reviewed

🚀 Deployment Notes

📸 Screenshots/Demo

Screen.Recording.2026-01-25.181048.mp4

🙏 Reviewer Notes


@abhishree-k
Copy link
Contributor Author

@eccentriccoder01 done , review and merge 🙂 and add valid labels
and it wasnt at all easy to do this 😭

@abhishree-k
Copy link
Contributor Author

@eccentriccoder01 ?? please review

@eccentriccoder01
Copy link
Owner

Yes @abhishree-k I've been really busy handling people across multiple projects which is why I'm late to respond, and I apologise for that... Well @abhishree-k I assume what you've done is not erroneous and I'm merging your pull request now, since right now it isn't really possible for me to preview deploy this on Render's streamlit.
But since you're so restless about your pull request getting reviewed or merged and you've to take it to professionals for complaining multiple times, let's actually view it a bit more professionally

  • A contributor who is really dedicated to improving the project and contributing to open source strictly following all the rules would not beg to upgrade the label which was pre-decided at the time of issue assignment

@eccentriccoder01 done , review and merge 🙂 and add valid labels and it wasnt at all easy to do this 😭

  • After assignment you were instructed to provide the Streamlit Cloud deployment link of your fork the working could actually be checked by the maintainers of TalkHeal: [ENHANCEMENT] Cursor trail that matches theme #640 (comment)

  • Your total focus was on complaining so your PR gets merged and not on here. Most of your code and all of your issue and PR descriptions are AI-generated which is why implementing a simple cursor trail across all the files seemed too difficult to you.

If you wanna come at a project admin this way, at least be prepared and look at your own self at first. Don't make yourself look immature, it's just a suggestion from a senior to new contributors like you.

@eccentriccoder01 eccentriccoder01 merged commit 698ac1e into eccentriccoder01:main Jan 28, 2026
@abhishree-k
Copy link
Contributor Author

@eccentriccoder01 Being a project admin, you need to guide the contributors when things are wrong or not as of your great expectations , not lash out in anger on them because you get tagged on general chat. Humans tend to make mistakes; everyone first learns and then does things perfectly. It was about improving the project. I did use AI because it was python , which was very confusing . But i really made sure it doesnt disrupt the existing working ..If you cant give your time to projects , then why handle so many at once ? we were told kindly if any issues contact the support team of Swoc .
I was resting for 3 days , its a competative place , where every pr has points and rank changes everyday . Everyone is struggling to make career including you sir , I may not be as good as you , But i make sure to learn something from every pr .
thank you for your least time and hope your app is succesfull at the end of swoc period . @eccentriccoder01

@eccentriccoder01
Copy link
Owner

@eccentriccoder01 Being a project admin, you need to guide the contributors when things are wrong or not as of your great expectations , not lash out in anger on them because you get tagged on general chat. Humans tend to make mistakes; everyone first learns and then does things perfectly. It was about improving the project. I did use AI because it was python , which was very confusing . But i really made sure it doesnt disrupt the existing working ..If you cant give your time to projects , then why handle so many at once ? we were told kindly if any issues contact the support team of Swoc .
I was resting for 3 days , its a competative place , where every pr has points and rank changes everyday . Everyone is struggling to make career including you sir , I may not be as good as you , But i make sure to learn something from every pr .
thank you for your least time and hope your app is succesfull at the end of swoc period . @eccentriccoder01

The first line of my response was an apology and an accountability on my part. I really don't want to compare myself with you, but the difference between us is that you have the inability to look at your ownself and accept your mistakes. It feels great to point out at somebody publicly, but feels terrible when the thing is reversed LOL, doesn't it❔And that is why giving you the advice was very important. I couldn't care less if you apply that advice in your life or not, but your focus is not on the right place, that's all I have to say. You will gain absolutely nothing by talking back to me on my project thread. Hopefully you will learn something instead. Good Night LMAO

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

Labels

Easy enhancement New feature or request SWoC26

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ENHANCEMENT] Cursor trail that matches theme

2 participants