Not open source. Not closed source. The Fair Source License allows everyone to see the source code and makes the software free to use for a limited number of users in your organization. It offers some of the benefits of open source while preserving the ability to charge for the software.
PostHog is the all-in-one platform for building better products - with product analytics, feature flags, session recordings, a/b testing, heatmaps, and more.
Optimizing the size of images can have a bigger impact on performance than all other areas combined. In this article, Louis Lazaris covers different tools available for reducing the size of images.
A tutorial how to use a monorepo architecture in frontend JavaScript and TypeScript with tools like npm/yarn/pnpm workspaces, Turborepo/NX/Lerna, Git Submodules, ...
Be the browser’s mentor, not its micromanager. - Build Excellent Websites
Key principles using modern CSS, fluid type, fluid space, flexible layout and progressive enhancement will help you to build better front-ends that work for everyone.
How to automatically size a textarea based on its using vanilla JavaScript
Last year, I wrote an article sharing Stephen Shaw’s awesome trick for simple, autogrowing textarea elements.
It uses a wrapper element, CSS grid, and a sprinkling of vanilla JS, and it works wonderfully! But… if your textarea has text in it when the page loads, it doesn’t work.
.autogrow { display: grid; } .autogrow::after { content: attr(data-replicated-value) " "; white-space: pre-wrap; visibility: hidden; } .autogrow textarea { resize: none; } .
Jovo is the most popular development framework for voice, including platforms like Alexa, Google Assistant, mobile apps, and Raspberry Pi. Learn more here.
Removing list styles removes list semantics in iOS - Geoff Graham
Say you’re on a navigation element. You might do something like this in HTML: And when styling it, you probably want to strip out the bullet points in CSS: Then you move right along with your merry day. The only problem is that wipes out the semantics of the list in VoiceOver in WebKit browsers. […]