We are fortunate to have robust patterns to choose from when optimizing accessibility in SVGs — but most people stop there, focusing on code compliance and not actual users and their needs. If true inclusiveness lies beyond patterns — what other factors should we consider when designing and developing accessible SVGs?
Read more…
Reset password functionality is table stakes for any user-friendly application. It can also be a security nightmare. Using NodeJS and MySQL. Today, Darshan Somashekar demonstrates how to successfully create a secure reset password flow so you can avoid these pitfalls. Darshan will be using NodeJS and MySQL as the base components. If you’re writing using a different language, framework, or database, you can still benefit from following the general “Security Tips” outlined in each section.
Read more…
It’s here, and it’s shipping. Today, Vitaly Friedman brings you our new practical guide on how to help companies grow sustainably with honest digital products. Without dark patterns, with ethics in mind, and ready for GDPR & CCPA. Jump to table of contents or get the book right away.Read more…
The Laravel-powered October CMS enables to extend the functionality of the application through the use of plugins. In this article, Leonardo Losoviz will do a tour around October CMS: You will first see how to install it, then check some of its coding and usability features in a bit more detail, and finally get your hands dirty implementing an e-commerce website through one of its most popular plugins, Shopaholic.
Read more…
In this episode of the Smashing Podcast we’re talking about an interesting open-source tool called Sourcebit. How can it help our content workflow with JAMstack sites? Drew McLellan speaks to developer Eduardo Bouças to find out.
Read more…
Thanks to some recent changes in browsers, it’s now well worth setting width and height attributes on your images to prevent layout shifts and improve the experience of your site visitors. Barry Polland loves improvements that just work without any effort required of website owners. That is not to ignore the hard work required by the browser developers and standardization teams, of course, but it’s often rolling out to websites that is the real difficulty. The less friction we can add to introduce these improvements, the more likely they will be adopted, and there’s no better friction than none at all!
Read more…
Transliteration is a popular way to input non-English characters using an English keyboard. The typical method of implementing this is via keyboard event capturing but there’s no uniform support from mobile browsers. In this article, Sandamal Siripathi explains a new method to eliminate such browser-related problems when developing web apps that use transliteration.
Read more…
Ever built a website and reached for jQuery, Bootstrap, Vue.js or React to acheive some basic user interaction? Alpine.js is a fraction of the size of these frameworks because it involves no build steps and provides all of the tools you need to build a basic user interface. Today, Phil Smith is going to take a closer look at Alpine.js and how it can replace JQuery or larger JavaScript libraries to build interactive websites. If you regularly build sites that require a sprinkling on Javascript to alter the UI based on some user interaction, then this article is for you.
Read more…
Around the web and within the CSS Working Group, there has been some discussion about whether we should specify a version of CSS — perhaps naming it CSS4. In this article, Rachel Andrew rounds up some of the pros and cons of doing so, and asks for your feedback on the suggestion.
Read more…
Prototyping helps to formulate the main trajectory of the design by framing your mind around a continuous pursuit of better concepts. Any team that makes a prototyping integral part of their design is motivated to search for a better solution. Today, Tony Kim will introduce you to ProtoPie, a tool that will help you prototype in the best way possible to validate an idea and bring it to life.
Read more…