Work
A selection of projects, mostly built with JavaScript, TypeScript, React and D3. The featured projects are live and worth a look. The rest are open source repositories on GitHub.
A selection of projects, mostly built with JavaScript, TypeScript, React and D3. The featured projects are live and worth a look. The rest are open source repositories on GitHub.
Aaarto is an online drawing program that mints the artwork as an NFT. Art is built from circles and squares and saved as SVG, so the minted work keeps its structure. The SVG and its metadata are stored on IPFS, and minting goes through a user's wallet. Aaarto runs on the Polygon network, and minted art can be viewed on Rarible.
Aaarto ties the drawing tool to the token. Because the art is made only from circles and squares, the SVG describes its own content, which a grid of pixels cannot. Built with TypeScript, with wallet connection through MetaMask.
Visit aaarto.art · Source on GitHub
A marketplace concept for stones and jewelry from Peru, built around provenance: each piece is traced from mine to craft with immutable records. The site is currently a demonstration, with a public launch planned.
The problem is that Peruvian law requires the origin of a stone or mineral to be legally sourced and documented. Each piece becomes a token on Hedera, with provenance details such as the mining concession and artisan registry anchored in its metadata. Later events, such as mounting, sale and export, are notarized on the Hedera Consensus Service. Built with TypeScript.
My role: I created the concept and the business idea, designed and built the website, and wrote a smart contract for Hedera, running on the Hedera testnet.
Visit umina-achala.pe · Source on GitHub
2DPhysics Data is an exploration of visualizing data with a 2D physics layout. The data displayed is 100 of the Heaviest Meteorites from NASA's Open Data Portal.
Each meteorite is a physical body that moves under a 2D physics engine, and clicking or tabbing to a body shows its details. The engine draws to a canvas, and its values drive a second layer of DOM elements, so variable-length text lays out naturally. The layout takes its inspiration from the D3 force layout. Built with React, Matter.js, RxJS and Fluent UI.
Launch 2DPhysics Data · Source on GitHub
View GIBS is a tool for viewing satellite images provided by NASA's Global Imagery Browse Services (GIBS) system.
It is a simplified take on NASA's Worldview application, aimed at making satellite imagery quicker to search and browse. The map is a single React component wrapping OpenLayers, and RxJS carries messages between components. Built with TypeScript, React, OpenLayers and Fluent UI.
Techniques for using React, TypeScript and D3.js together.
D3 Geo rendering a globe image, with React controls.
Scripts to work with GPS data.
A pattern for displaying data with RxJS and React.
Methods for using the D3 visualization library inside a framework.
A Python script for converting images into SVG files for laser cutting.
A system of applications that controls LEDs on remote devices, with a Node agent sending MQTT topics on behalf of a user.
Get, fuse and display sensor information for Android.
A game where the user navigates a creature, Ameb, to catch food.
SVG animation samples.