# Benjamin David > Portfolio of Benjamin David, a product design engineer based in the French Alps. For the past decade he led design at Pixel & Tonic on Craft CMS, Craft Commerce, the Craft Plugin Store, Craft Console, and Craft Cloud. He now helps founders and teams turn their ideas into intuitive, user-friendly interfaces. Contact: ben@dukt.net ## About Hi, I'm Ben, a product designer and engineer based in the French Alps with a passion for both design and code. I love crafting user experiences where form and function work hand in hand. For the past decade, I've led the UI and UX for Pixel & Tonic's products and projects like Craft CMS, Craft Cloud, or Craft Commerce, and created my own plugins for Craft CMS: Analytics, Videos and Social. Now, I help founders and teams turn their ideas into intuitive and user-friendly interfaces. Whether you're starting fresh or refining an existing product, I'd love to chat about your next project. ## Featured Work Selected work shown on [the home page](https://ben.dukt.net/): - [Using Fitts’ law to make hit targets larger, and small things easier to click #fitts #ux](https://x.com/bendukt/status/1985711926010171710) ([video](https://ben.dukt.net/assets/work/fitts.mp4)) - [Speaker Grill Wave](https://x.com/bendukt/status/1983965864488792182) ([video](https://ben.dukt.net/assets/work/speaker-grill-wave.mp4)) - [Product availability in Digital Test Center Live](https://x.com/bendukt/status/1961445172866117725) ([image](https://ben.dukt.net/assets/work/dtc-product-availability@4x.webp)) - [Space X Ride Hailing App](https://x.com/bendukt/status/1962442963776135260) ([video](https://ben.dukt.net/assets/work/space-x-ride-hailing-app.mp4)) - [Craft CMS UX/UI](https://craftcms.com/) ([image](https://ben.dukt.net/assets/work/craft-cms@4x.webp)) - [Dukt Wireframe Logo](https://x.com/bendukt/status/1949093596860411949) ([video](https://ben.dukt.net/assets/work/dukt-wireframe-logo.mp4)) - [Inventory items in Digital Test Center](https://x.com/bendukt/status/1948029481752412633) ([image](https://ben.dukt.net/assets/work/dtc-items@4x.webp)) - [Craft Console](https://console.craftcms.com/) ([image](https://ben.dukt.net/assets/work/craft-console@4x.webp)) - [Craft Console Login](https://craftcms.com/cloud) ([image](https://ben.dukt.net/assets/work/craft-console-login@4x.webp)) - [Item statuses in Digital Test Center](https://x.com/bendukt/status/1947692350597435905) ([image](https://ben.dukt.net/assets/work/dtc-item-statuses@4x.webp)) - [Starting a product test in Digital Test Center](https://x.com/bendukt/status/1945111061289427171) ([image](https://ben.dukt.net/assets/work/dtc-start-product-test@4x.webp)) - [What are you working on?](https://x.com/bendukt/status/1945520812196343921) ([image](https://ben.dukt.net/assets/work/what-are-you-working-on@4x.webp)) - [Craft Plugin Store](https://plugins.craftcms.com/) ([image](https://ben.dukt.net/assets/work/craft-plugin-store@4x.webp)) - [Dukt Plugins](https://dukt.net/) ([image](https://ben.dukt.net/assets/work/dukt-plugins@4x.webp)) - [Analytics for Craft CMS](https://dukt.net/analytics) ([image](https://ben.dukt.net/assets/work/analytics@4x.webp)) - [Videos for Craft CMS](https://dukt.net/videos) ([image](https://ben.dukt.net/assets/work/videos@4x.webp)) - [Spoke & Chain Demo](https://github.com/craftcms/spoke-and-chain) ([image](https://ben.dukt.net/assets/work/spoke-and-chain@4x.webp)) - [Playdate Space Invaders](https://github.com/benjamindavid/spaceinvaders) ([image](https://ben.dukt.net/assets/work/space-invaders@4x.webp)) - [Dukt Logo](https://dribbble.com/shots/24573905-Dukt) ([image](https://ben.dukt.net/assets/work/dukt-logo@4x.webp)) - [REST](https://dribbble.com/shots/1818179-REST-Icon) ([image](https://ben.dukt.net/assets/work/rest@4x.webp)) ## Work Archive The full archive is shown on [the home page](https://ben.dukt.net/), below the featured grid. Each entry below links to its screenshot: ### Craft CMS My journey started with ExpressionEngine around 2010, making websites and plugins, including Analytics, the plugin that got me invited to join Pixel & Tonic’s team of three to lead the design of Craft. Over the years I’ve worked on every major iteration of the control panel, from v1 to v5, alongside accessibility improvements and features like the Field Layout Designer, which is how content is modeled in Craft. - [Where it started: from ExpressionEngine plugins to Craft CMS.](https://ben.dukt.net/assets/work/more/ee-and-craftcms.webp) - [Craft CMS v1 (2013).](https://ben.dukt.net/assets/work/more/craftcms-v1.webp) - [Craft CMS v2 (2014).](https://ben.dukt.net/assets/work/more/craftcms-v2.webp) - [Craft CMS v3 (2018).](https://ben.dukt.net/assets/work/more/craftcms-v3.webp) - [Craft CMS v4 (2022).](https://ben.dukt.net/assets/work/more/craftcms-v4.webp) - [Craft CMS v5 (2024), still in the making during my time there.](https://ben.dukt.net/assets/work/more/craftcms-v5.webp) - [Field Layout Designer: early sketch.](https://ben.dukt.net/assets/work/more/sketch-fld.webp) - [Field Layout Designer: final design.](https://ben.dukt.net/assets/work/more/field-layout-designer.webp) ### Craft Commerce As the company and the team grew, I kept designing for Craft’s new products, like Craft Commerce, a powerful ecommerce platform built exclusively for Craft CMS, where merchants manage their products, orders, and store right alongside their content. - [The Craft Commerce dashboard.](https://ben.dukt.net/assets/work/more/craft-commerce.webp) - [The products index: prices, variants, attributes, and stock at a glance.](https://ben.dukt.net/assets/work/more/commerce-products.webp) - [Editing a product, with drafts and a full revision history.](https://ben.dukt.net/assets/work/more/commerce-product-edit.webp) - [Spoke & Chain, the demo bike store showcasing what a Commerce front-end can be.](https://ben.dukt.net/assets/work/more/spoke-and-chain.webp) ### Craft Plugin Store Developers had been extending Craft with plugins since v1, but there was no central place to publish them, and selling meant building your own payment and licensing systems. The Plugin Store solved this with a store right inside the control panel, plus an online store for discoverability and SEO. I designed the experience and implemented the store’s front-end with Vue.js and Nuxt. Launched in 2017 with 125 plugins, it now hosts around 1,000, with over $7,000,000 paid out to developers. - [Directory, my 2014 plugin for browsing and installing plugins from the control panel, three years before the Plugin Store.](https://ben.dukt.net/assets/work/more/craft-directory.webp) - [Early sketch for managing plugins in Craft, taking inspiration from existing marketplaces.](https://ben.dukt.net/assets/work/more/sketch-plugins.webp) - [The in-app Plugin Store: install and purchase plugins without leaving the control panel.](https://ben.dukt.net/assets/work/more/pluginstore-inapp.webp) - [The online Plugin Store, improving plugin discoverability and SEO.](https://ben.dukt.net/assets/work/more/pluginstore-online.webp) - [A plugin's page: screenshots, pricing, documentation, and installation instructions.](https://ben.dukt.net/assets/work/more/pluginstore-plugin-details.webp) - [Install counts and GitHub metrics instead of ratings, to show how active and popular a plugin is.](https://ben.dukt.net/assets/work/more/pluginstore-plugin-activity.webp) - [Helping developers publish their first plugins at our Craft conference in Portland, where the Plugin Store beta launched.](https://ben.dukt.net/assets/work/more/workshop.webp) ### Craft Console The companion to the Plugin Store: a place where customers manage their Craft and plugin licenses, order history, and billing info, and where plugin developers publish their plugins, connect their Stripe account to get paid, and track their sales. - [Signing into Craft Console.](https://ben.dukt.net/assets/work/more/console-login.webp) - [Where customers manage their Craft and plugin licenses, orders, and billing info.](https://ben.dukt.net/assets/work/more/console-licenses.webp) - [Where developers publish their plugins, connect Stripe, and track sales, keeping 80% of the revenue.](https://ben.dukt.net/assets/work/more/craft-console-plugins.webp) - [Organizations in Craft Console let agencies manage their projects, licenses, plugins, and billing as a team.](https://ben.dukt.net/assets/work/more/console-orgs.webp) - [Organizations: billing.](https://ben.dukt.net/assets/work/more/console-orgs-billing.webp) - [Organizations: inviting members with different levels of permissions.](https://ben.dukt.net/assets/work/more/console-orgs-permissions.webp) ### Craft Cloud The community had long been asking Pixel & Tonic for a way to publish Craft projects without worrying about DevOps. Announced in 2019 as a headless-only platform, customer feedback sent us back to the drawing board, and Craft Cloud became a scalable hosting solution for every kind of Craft site, with organizations in Craft Console so agencies could work as teams. I designed the experience from sketches to high-fidelity prototypes and implemented the front-end with Vue.js. Five years in the making, Craft Cloud launched in the summer of 2024. - [The dotted logo teasing Craft Cloud, announced in September 2019.](https://ben.dukt.net/assets/work/more/cloudlogo.webp) - [Take #1: the original headless-only concept, before customer feedback sent us back to the drawing board.](https://ben.dukt.net/assets/work/more/cloud-v1.webp) - [Take #2: a scalable hosting solution tailored for Craft CMS, with all types of sites in mind, plugins included.](https://ben.dukt.net/assets/work/more/console-v3.webp) - [The shipped deployments experience: push a Craft project to the Cloud with no DevOps.](https://ben.dukt.net/assets/work/more/cloud-deployments.webp) - [Per-environment variables, with sensitive values kept secret.](https://ben.dukt.net/assets/work/more/cloud-variables.webp) - [Notebook sketch exploring the project access screen.](https://ben.dukt.net/assets/work/more/sketch-project-access.webp) - [The Figma prototype, borrowing ideas from products like Vercel, Netlify, and DigitalOcean.](https://ben.dukt.net/assets/work/more/prototype.webp) ### Videos for Craft CMS One of my own plugins for Craft CMS. Videos connects your YouTube and Vimeo accounts to Craft so that editors can browse their video libraries and add videos to their content with a dedicated field. - [The video explorer, browsing a connected Vimeo account's library, folders, and showcases.](https://ben.dukt.net/assets/work/more/videos-plugin.webp) ### Analytics for Craft CMS Another of my own plugins, and the one that started it all: Analytics brings Google Analytics reports right into Craft's dashboard, with widgets for real-time visitors, page views, and audience insights. This is the plugin that got Brandon Kelly's attention and led to me joining Pixel & Tonic. - [Real-time Google Analytics widgets for the Craft dashboard.](https://ben.dukt.net/assets/work/more/analytics-plugin.webp) ### Digital Test Center More recently, I've been designing for Digital Test Center, a platform that helps brands and event organizers run product tests in the field, from fleet and inventory management to test scheduling and authentic review collection. Used by brands like Decathlon, Salomon, and Adidas Terrex, it has powered over 350,000 product tests. - [From sign-up form to registered tester: registrations flow straight into the platform.](https://ben.dukt.net/assets/work/more/dtc-registration.webp) - [Live product availability, showing how many items of each size are left in the fleet, displayed on big screens during events.](https://ben.dukt.net/assets/work/more/dtc-product-availability.webp) - [Tracking every item in a fleet, with barcodes, serial numbers, and live statuses.](https://ben.dukt.net/assets/work/more/dtc-items.webp) - [Color-coded statuses following each item through its lifecycle.](https://ben.dukt.net/assets/work/more/dtc-item-statuses.webp) - [Finding items by name, barcode, or serial number, or by scanning them.](https://ben.dukt.net/assets/work/more/dtc-search-scan.webp) - [Starting a product test: pair a tester with a product, and go.](https://ben.dukt.net/assets/work/more/dtc-start-product-test.webp) ### Digital Test Center Mobile App Digital Test Center also comes with a companion mobile app for running tests in the field, on iOS and Android. Event staff can check in testers, scan a product's barcode, and start or close tests in a few taps. - [The app icon on the home screen.](https://ben.dukt.net/assets/work/more/dtc-app-icon.webp) - [Logging in, with Face ID support.](https://ben.dukt.net/assets/work/more/dtc-app-login.webp) - [An event's testers, each with a validation status.](https://ben.dukt.net/assets/work/more/dtc-app-testers.webp) - [A tester's profile: start a test, give them a call, and browse their test history.](https://ben.dukt.net/assets/work/more/dtc-app-tester-profile.webp) - [Starting a test by scanning the product's barcode.](https://ben.dukt.net/assets/work/more/dtc-app-new-test.webp) - [A test in progress, ready to be closed when the product comes back.](https://ben.dukt.net/assets/work/more/dtc-app-test-detail.webp) ### Social Post Scheduler An experiment I'm currently tinkering with: a small tool for sharing design work across social networks. Write a post once, attach a shot, pick a time, and it goes out to X, LinkedIn, Dribbble, and Bluesky all at once. - [The posts dashboard: drafts, scheduled, and published posts across all channels.](https://ben.dukt.net/assets/work/more/social-post-scheduler-posts.webp) - [Compose once, schedule everywhere.](https://ben.dukt.net/assets/work/more/social-post-scheduler.webp) ## Optional - [Craft CMS](https://craftcms.com/): the CMS whose UI and UX he led for a decade - [Craft Cloud](https://craftcms.com/cloud): scalable Craft hosting he designed, launched in 2024 - [Digital Test Center](https://www.digitaltestcenter.com/en): field product-testing platform, his recent client work - [Dukt](https://dukt.net/): his own Craft CMS plugins, including Analytics and Videos