Skip to content

rebelias/Hearwell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

49 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

HearWell 🎧

Free, open-source hearing health toolkit. No ads, no tracking, no accounts required.

Live Demo License: MIT TypeScript React GitHub issues GitHub pull requests

🌟 Featured On


🌟 Why HearWell?

I've been living with chronic tinnitus for 8 years. During this time, I've discovered that the tools needed to manage tinnitus and monitor hearing health are either:

  • Locked behind expensive paywalls ($50-200 per app)
  • Require creating accounts and sharing personal data
  • Not accessible in multiple languages
  • Lack proper scientific backing

HearWell exists to fix this. It's completely free, runs entirely in your browser, and respects your privacy. No data collection, no accounts, no barriersβ€”just tools that help.


✨ Features

🎡 Online Audiometer

Professional-grade hearing test with real-time audiogram visualization. Test frequencies from 250Hz to 10kHz across 12 volume levels. Export comprehensive CSV reports for your records or to share with your audiologist.

πŸ” Tinnitus Frequency Finder

Pinpoint the exact frequency of your tinnitus (50Hz - 20kHz) using multiple waveforms. Essential first step for personalized sound therapy.

🎼 Tonal Masker (14 Modes)

Advanced neuromodulation therapy using:

  • Amplitude Modulation (AM) - Varying intensity
  • Frequency Modulation (FM) - Wobbling tones
  • Coordinated Reset (CR) - Randomized sequences to prevent neural adaptation
  • Background Sounds - Nature sounds (rain, ocean, birds, cicadas)

🌊 Noise Generators

  • Colored Noise - White, pink, brown, violet, blue, grey with 8-band EQ
  • Notched Noise - Advanced therapy with 10-band EQ and precise frequency control

🌍 9 Languages

English, Spanish, French, German, Portuguese, Turkish, Chinese, Hindi, Japanese


πŸš€ Quick Start

🌐 Use it online: hearwell.life - No installation needed!

πŸ’» Run locally:

git clone https://github.com/rebelias/Hearwell.git
cd Hearwell
npm install
npm run dev

Open http://localhost:5000 in your browser.


πŸ”’ Privacy First

  • βœ… 100% Client-Side - All processing happens in your browser
  • βœ… No Data Collection - Zero tracking, zero analytics
  • βœ… No Accounts / No Backend - Static site; nothing to sign up for
  • βœ… No Third-Party Scripts - Your data stays yours (no analytics/ads)
  • βœ… GDPR Compliant - Privacy by design

Your hearing test results never leave your device unless you choose to export them.

What data is stored locally?

  • LocalStorage only (on your device) for:
    • Disclaimer acceptance (hearwell-disclaimer-accepted)
    • Calibration settings (audiometer-calibration, audiometer-calibrated)
    • UI preferences (theme, language, and some tool settings)
    • Optional local error logs for debugging (hearwell_errors)

Third-party requests

  • Google Fonts are loaded from fonts.googleapis.com / fonts.gstatic.com for typography. This makes a network request to Google’s CDN (no analytics scripts are used).

πŸ› οΈ Tech Stack

  • Frontend: React 18 + TypeScript 5.6 + Vite 5
  • Styling: Tailwind CSS + Shadcn/ui
  • Audio: Web Audio API (native browser API)
  • i18n: react-i18next (9 languages)
  • Testing: Vitest + Playwright
  • CI/CD: GitHub Actions + Cloudflare Pages

🎯 Use Cases

  • 🩺 For Individuals: Monitor your hearing health, manage tinnitus
  • πŸ₯ For Clinics: Free screening tool for resource-limited settings
  • πŸŽ“ For Students: Learn about audiology and Web Audio API
  • πŸ”¬ For Researchers: Collect hearing data in studies (with consent)
  • 🌍 For Communities: Accessible hearing health in any language

πŸ“– Documentation


🀝 Contributing

We welcome contributions! Whether you're fixing bugs, adding features, or translating to new languages:

  1. Fork the repo
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Ideas for contributions:

  • 🌐 Add translations (more languages needed!)
  • 🎨 Improve UI/UX
  • πŸ› Fix bugs
  • πŸ“š Improve documentation
  • ✨ Add new therapeutic sound modes

πŸ§ͺ Testing

npm run test              # Unit tests
npm run test:coverage     # Coverage report
npm run test:e2e          # End-to-end tests (requires: npx playwright install)
npm run lint              # Linting

Target: 80%+ code coverage


🌐 Browser Support

Browser Status
Chrome/Edge βœ… Full support
Firefox βœ… Full support
Safari βœ… Full support*
Mobile βœ… Supported*

*May require user interaction to start audio (browser security policy)


πŸ“¦ Building for Production

npm run build   # Creates optimized production build
npm start       # Serves production build

Deploy to any static hosting (Cloudflare Pages, Vercel, Netlify, GitHub Pages).


⚠️ Medical Disclaimer

HearWell is an educational tool, NOT a medical device.

  • ❌ Not a replacement for professional audiological evaluation
  • ❌ Not FDA approved or medically certified
  • ❌ Not for diagnosis or treatment decisions

Always consult qualified healthcare professionals for:

  • Professional hearing assessments
  • Medical diagnosis
  • Treatment recommendations
  • Any concerns about your hearing health

Audio Safety: Use headphones at safe volumes. Stop immediately if you experience discomfort.

By using HearWell, you agree to use it at your own risk. See full LICENSE for details.


πŸ™ Acknowledgments

Built with love by someone who knows what it's like to live with tinnitus.

Special thanks to:

  • The open-source community
  • Web Audio API contributors
  • Everyone who suggested features and reported bugs

πŸ“¬ Support

  • πŸ› Bug Reports: Open an issue
  • πŸ’‘ Feature Requests: Start a discussion
  • πŸ’¬ Share Your Experience: Leave feedback
  • 🌟 Star the repo if HearWell helps you!
  • πŸ’¬ Spread the word to anyone who might benefit

For medical questions, please consult a healthcare professional.


πŸ† Recognition

  • ⭐ GitHub Stars: GitHub stars
  • 🍴 Forks: GitHub forks
  • 🌍 Available in 9 languages
  • 🎯 100% privacy-focused - No tracking, no data collection

⭐ Star History

Star History Chart


πŸ”— Links & Resources

πŸ” Keywords & Search Terms

For SEO and discoverability:

tinnitus relief tools, online hearing test, free audiometer, tinnitus frequency finder, sound therapy, hearing loss test, notched noise therapy, coordinated reset, tinnitus management, hearing health, web-based audiometer, browser hearing test, tinnitus masking, acoustic neuromodulation, hearing assessment, tinnitus treatment, sound masking, white noise generator, pink noise, brown noise, hearing test app, audiogram online, pure tone audiometry, hearing conservation, tinnitus therapy, open source medical tools


πŸ“„ License

MIT License - see LICENSE file for details.

TL;DR: Free to use, modify, and distribute. Just don't sue us. 😊


🌱 Roadmap

  • Add more therapeutic sound modes
  • Implement frequency-specific volume testing
  • Add data export options (JSON, PDF)
  • Create mobile apps (React Native)
  • Add more languages (Arabic, Korean, Italian, etc.)
  • Implement sound quality presets
  • Add calibration for different headphone types

Want to help? Pick an item and open a PR!


Made with ❀️ by someone who lives with tinnitus, for everyone who does.

⭐ Star this repo β€’ 🌐 Try it now β€’ πŸ“£ Share with others

About

Hearing Health Tools

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages