Christian Liebel

Making of paint.js.org—a Web Component-based Productivity PWA

Build desktop-class PWAs with native file handling and clipboard access, all without a major framework. Here's how.

Making of paint.js.org—a Web Component-based Productivity PWA
#1about 10 minutes

Demonstrating a cross-platform PWA paint application

A live demonstration showcases paint.js.org's features, including installation, file handling, clipboard integration, and offline capabilities across desktop and mobile devices.

#2about 7 minutes

Building with Web Components and the Lit library

The application is built using standard Web Components and the lightweight Lit library, avoiding larger frameworks for better interoperability.

#3about 2 minutes

Unifying input with HTML Canvas and Pointer Events

The HTML Canvas 2D context is used for drawing, while Pointer Events provide a unified API for handling mouse, touch, and pen inputs.

#4about 6 minutes

PWA fundamentals for installation and offline support

Progressive Web App capabilities are enabled through the Web App Manifest for installability and a Service Worker for offline caching.

#5about 8 minutes

Extending web capabilities with Project Fugu APIs

Project Fugu is a cross-vendor initiative that adds native-like features to the web platform, such as clipboard and file system access.

#6about 2 minutes

Using the Async Clipboard API for copy and paste

The Async Clipboard API provides a modern, permission-based way to programmatically read and write images to the system clipboard.

#7about 3 minutes

Implementing file system access and file handling

The File System Access API allows the PWA to open, save, and overwrite files, while the Web App Manifest registers it as a file handler.

#8about 2 minutes

Creating a dark mode with CSS Custom Properties

A dynamic dark mode is implemented using CSS Custom Properties that are updated based on the `prefers-color-scheme` media feature.

#9about 4 minutes

Summary and real-world examples of advanced PWAs

A recap of how modern web technologies enable desktop-class applications, with examples like VS Code and Photoshop for the web.

Related jobs
Jobs that call for the skills explored in this talk.

job ad

Saby Company
Delebio, Italy

Intermediate

d

Saby Company
Delebio, Italy

Junior

Featured Partners

Related Articles

View all articles
BB
Benedikt Bischof
Native Web Apps: Are We There Yet?
Welcome to this issue of the WeAreDevelopers Live Talk series. This article recaps an interesting talk by Maxim Salnikov who spoke about the development of native web apps. What you will learn:Some pros and cons of web applicationsThe most important ...
Native Web Apps: Are We There Yet?
CH
Chris Heilmann
Dev Digest 134 - Where pixels sing?
News and ArticlesWeAreDevelopers LIVE Data and Security Day is on Wednesday, 25/09/2024. Learn about OPC UA Updates, Best Practices for Using GitHub Secrets, Passwordless Web 1.5, Emerging AI Security Risks, Data Privacy in LLMs and get a chance to t...
Dev Digest 134 - Where pixels sing?
CH
Chris Heilmann
Dev Digest 116 - WWWAI?
This time, learn how to un-AI Google's search results, what's new on the web, avoid a new security hole and go back to BASICS with us. News and ArticlesWhat a week. Google, Microsoft, OpenAI and many others had their big flagship events announcing th...
Dev Digest 116 - WWWAI?

From learning to earning

Jobs that call for the skills explored in this talk.

Frontend Developer

Frontend Developer

pixelart GmbH
Bergheim, Austria

42-60K
Vue.js
WebPack
TypeScript