react-datasheet, an Excel-like Datagrid Component for React

A simple react component to create a spreadsheet: Select cells, copy-paste cells Navigation using keyboard keys Deletion using keyboard keys Callbacks for onChange, valueRenderer(visible data) dataRenderer(underlying data in the input, takes the value by default) Installation per npm, of course: npm install react-datasheet –save Cells can have both a value and an expression (the underlying …

Exploring interdependencies in global resource trade

The volume of natural resources traded globally has increased over 60% since the turn of the century, reflecting and reinforcing new economic and geopolitical realities and bringing new environmental and social challenges – as well as opportunities. Now everyone can explore these fast-evolving dynamics through Chatham House’s comprehensive and accessible data and insights into resource …

Zttp, a developer friendly wrapper for Guzzle

If you’re not familiar with the evolution of Guzzle, the library has basically gotten more professional and less usable with each new version. New layers upon layers of specification-respecting abstractions and rules made Guzzle incredibly difficult to get started with. Zttp solves just that, by keeping things simple: Zttp is a simple Guzzle wrapper designed …

Inclusive Design Principles

These Inclusive Design Principles are about putting people first. It’s about designing for the needs of people with permanent, temporary, situational, or changing disabilities — all of us really. They are intended to give anyone involved in the design and development of websites and applications – designers, user experience professionals, developers, product owners, idea makers, …

CSS Shapes, Clipping and Masking

The release of Firefox 54 is just around the corner and it will introduce new features into an already cool CSS property: clip-path. clip-path is a property that allows us to clip (i.e., cut away) parts of an element. Up until now, in Firefox you could only use an SVG to clip an element: But …

Safari Auto-Play Policy Changes for macOS

The Safari team: Safari in macOS High Sierra uses an automatic inference engine to block media elements with sound from auto-playing by default on most websites. Safari 11 also gives users control over which websites are allowed to auto-play video and audio by opening Safari’s new “Websites” preferences pane, or through the “Settings for This …

Polluted Water Popsicles

What if one were to create water popsicles from sewage water? Art students Hung I-chen, Guo Yi-hui, and Cheng Yu-ti from the National Taiwan University of the Arts did just so: The group collected polluted water from 100 locations in Taiwan, first freezing the collected sewage samples and then preserving their creations in polyester resin. …

Gallery Invasion

A dynamic projection mapping by Antoon Verbeeck and Filip Sterckx located in Leuven, Belgium: We used a Panasonic PT-VZ570U projector, which had the MH12-VZ75L Mirror Head from Dynamic Projection Institute mounted in front of the projector’s lens. This is basically a mirror that is motorized and programmable and that can rotate 270 degrees, as well …

How the CSS minmax() Function Works

One incredibly useful new feature introduced with the CSS Grid Layout Specification is the minmax() function. This function opens the door to us being able to write much more powerful and succinct CSS by allowing us to set, as a value for a grid track, a function including both a minimum and maximum value. Using …