Skip to content
  • Learning paths
  • Challenges
  • Solutions
  • Articles
  • Unlock Pro
  • Log in with GitHub
Submitted 12 months ago

Responsive Accessible Dictionary web app. Vanilla JS & Native CSS.

Ortaly•1,060
@ortalyarts
Preview site (opens in new tab)View code (opens in new tab)
Desktop design screenshot for the Dictionary web app coding challenge
This is a solution for...Dictionary web app
  • HTML
  • CSS
  • JS
  • API
3intermediate
View challenge

Design comparison

SolutionDesign

Solution retrospective


What are you most proud of, and what would you do differently next time?

Built with:

  • Semantic HTML5 markup
  • Native CSS
  • Vanilla JavaScript
  • Mobile-first workflow
  • font-size: clamp() - for fluid typography
  • Font-family switch
  • Form validation
  • REST API to search for term in Free Dictionary API
  • Audio() constructor mdn - to play audio file
  • Dark / Light Theme switch + prefers-color-scheme + Fallback in JavaScript
  • Aria role listbox + option to add accessibility for selecting subjects

Checked with:

  • Chrome Screen reader
  • Chrome Lighthouse
  • PerfectPixel
What specific areas of your project would you like help with?

At the time point of submitting this challenge, the audio links, provided by Free Dictionary API, for some reason became inaccessible (Bad gateway, Error code 502), though they worked perfectly while developing the challenge... Obviously, this prevents the play sound button functionality.

Please advice if you have any idea how to solve this. Thanks in advance!

Community feedback

Please log in to post a comment

Log in with GitHub

Join our Discord community

Join thousands of Frontend Mentor community members taking the challenges, sharing resources, helping each other, and chatting about all things front-end!

Join our Discord
Frontend Mentor logo

Stay up to datewith new challenges, featured solutions, selected articles, and our latest news

Frontend Mentor

  • Unlock Pro
  • Contact us
  • FAQs
  • Become a partner

Explore

  • Learning paths
  • Challenges
  • Solutions
  • Articles

Community

  • Discord
  • Guidelines

For companies

  • Hire developers
  • Train developers
© Frontend Mentor 2019 - 2025
  • Terms
  • Cookie Policy
  • Privacy Policy
  • License

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub