When an AI model release immediately spawns memes and treatises declaring the rest of the industry cooked, you know you've got something worth dissecting.
Google's Gemini 3 was released Tuesday to widespread fanfare. The company called the model a "new era of intelligence," integrating it into Google Search on day one for the first time. It's blown past OpenAI and other competitors' products on a range of benchmarks and is topping the charts on LMArena, a crowdsourced AI evaluation platform that's essentially the Billboard Hot 100 of AI model ranking. Within 24 hours of its launch, more than one million users tried Gemini 3 in Google AI Stu …
Today, I’m delighted to introduce Raspberry Pi Imager 2.0: a complete reimagining of the application that’s been brewing in our development pot for the past year. It brings a new wizard interface, the opportunity to pre-configure Raspberry Pi Connect, and improved accessibility for screen readers and other assistive technologies.
Five years ago, we introduced Raspberry Pi Imager in the hope that we could make getting started with Raspberry Pi much simpler than the typical workflow of the time. Since then, we’ve added new features, expanded customisation options, and listened carefully to your feedback. But as the application progressed, so did the strain on the interface. Eventually, the size of the customisation form grew so large that it became unwieldy. Today’s update responds to this challenge.
What’s new? Everything (almost)
One thing was clear: for Imager 2.0, we needed to make a radical UI change. OS customisation is one of the most popular aspects of Raspberry Pi Imager, but we’d left it hidden in a separate window. Why hide the good stuff?
Separately, we had a list of features we wanted to offer, from improvements in the network installer through to wider accessibility. Following the launch of Raspberry Pi Connect, an obvious hope was to enable Connect sign-in during imaging, rather than after booting.
But what would we choose to do?
Reader, we chose all of the above.
Imagers old and new
A wizard appears
The most obvious change is the new step-by-step wizard interface. In order to make OS customisation a first-class citizen, we needed to bring it into the main interface, so now you’ll progress through a series of clearly defined stages:
Select your Raspberry Pi device
Choose your operating system
Pick your storage device
Configure your system (hostname, location, user account, wireless LAN, remote access, Raspberry Pi Connect, and interface options)
Write your image
Done!
Each step gets the full window to itself, with room for helpful descriptions, validation feedback, and relevant links. It’s a more spacious, less crowded experience all round.
Raspberry Pi Connect: pre-configured and ready to go
One extremely popular customisation the original Raspberry Pi Imager offered was the ability to configure, at the point of writing your SD card, your remote access credentials, giving you the chance to pre-program your SSH public keys.
What if, however, you wanted to use the much simpler Raspberry Pi Connect? With Imager 2.0, you can do just that. Simply authenticate during the imaging process, and when your Raspberry Pi boots for the first time, it’ll already be connected to your Raspberry Pi Connect account — ready to offer screen sharing or remote shell access from the start.
Accessible by design, not by chance
Raspberry Pi Imager is a much-loved, widely used application that represents, for many people, their very first interaction with Raspberry Pi. Every user deserves the best possible experience.
Each control in the new interface includes accessibility labelling for screen readers and other assistive technologies. The entire application is fully navigable via keyboard — no mouse required. We’ve paid careful attention to colour contrast throughout, ensuring text remains readable against its background in all situations.
The new colour scheme, built around Raspberry Red, is designed to make the UI easier to read (and to draw your attention to sensible choices). We use white space generously to establish clear boundaries between controls, making the interface easier to parse at a glance.
A massive thank you to our beta testersand contributors
To borrow a phrase: “It takes a village…”.
Raspberry Pi Imager 2.0 has seen extensive changes compared to the original, with an entirely new UI, significant alterations to the core software, and numerous new features. On top of that, there are hundreds of new translatable strings!
In early October, we started publishing open beta builds — and to the users who provided feedback early and in abundance, your contributions were invaluable. You’ve made this release considerably better than it might have been.
Our community translators deserve particular thanks. Translating not only the UI but also the accessibility strings of this application is a major task, and I’m continually humbled that people freely offer their time to ensure their communities can make the most of Imager.
Finally, I’d like to extend an extra-special thanks to my two interns this summer, Ben and Paul, both of whom have made large contributions to the UI and core code of Imager. The success of this launch is in no small part thanks to their efforts, and I hope they rightly celebrate it.
What’s next?
Raspberry Pi Imager 2.0 is available now for Raspberry Pi OS, Windows, macOS, and as a Linux AppImage. You’ll find download links on our software page.
If you want to get involved in more early-access software testing, check out our beta forums.
There's a big holiday meal on the horizon, and Trader Joe's is here to help with all your last-minute planning. In this episode, we're sharing three of our favorite (in this moment) recipes to help make your holiday feast a rousing success. A no-fuss appetizer that overdelivers on flavor. A different – and delicious! – twist on a holiday classic. And a meatless main dish that will make the non-meat-eaters at your table truly thankful they joined your gathering. You'll find all these recipes – and so many more, for every occasion – at traderjoes.com/recipes. [Links to the featured recipes below.]
Scott and Wes face off in a CSS-themed round of STUMP’d, quizzing each other on shape functions, scroll snap types, obscure functions, and long-forgotten spec history. From ray() to cross-fade() to print-color quirks, this episode is packed with rapid-fire frontend trivia guaranteed to sharpen your CSS brain.
TL;DR: Want to turn static PDFs into interactive forms? This guide shows you how to create fillable PDF forms in JavaScript using a PDF Viewer and Form Designer. Add dynamic fields, customize layouts, and manage form data programmatically, perfect for building user-friendly workflows in your web apps.
Creating interactive PDF forms is essential for modern business workflows, whether you’re collecting customer information, processing applications, or managing agreements. However, building a web-based solution that lets users create fillable PDF forms and manage form fields can be challenging for developers and product teams.
That’s where Syncfusion’s JavaScript PDF Viewer simplifies the process. It enables you to easily design and customize fillable PDF forms, add or edit form fields, and even save user input, all without complex integrations or heavy coding. With support for both intuitive UI-based design and programmatic customization, you can quickly deliver professional, interactive PDF forms that look great and work seamlessly.
In this blog, we’ll walk through how to generate fillable PDF forms, design and customize form fields, and enable form filling, all using Syncfusion’s developer-friendly approach.
Setting up Syncfusion PDF Viewer for form creation
Integrating Syncfusion’s JavaScript PDF Viewer into your project is easier than you might think. Let’s create your PDF editor in the Web browser.
Step 1: Create a project folder
Start by creating a folder for your application, for example, my-app. This folder will contain all your project files, including the HTML page that will host the Syncfusion Essential JS 2 JavaScript components.
Step 2: Add script and style from CDN
Syncfusion’s Essential JS 2 components are available on a CDN, so you don’t need to install anything. Just include the script and style links in your HTML file. This makes setup quick and hassle-free.
<head>
<title>Essential JS 2 PDF Viewer</title>
<!-- Common Material 3 Theme -->
<link href="https://cdn.syncfusion.com/ej2/31.2.2/material3.css" rel="stylesheet">
<!-- Essential JS 2 Script -->
<script src="https://cdn.syncfusion.com/ej2/31.2.2/dist/ej2.min.js"></script>
</head>
Step 3: Create an HTML file
Inside your my-app folder, create an index.html file. Add a <div> element where the PDF Viewer will appear. Then, initialize the Syncfusion PDF Viewer component.
Once your index.html file is ready, launch it in any modern browser, like Chrome, Edge, or Firefox. The Syncfusion PDF Viewer will load instantly and display a sample PDF.
PDF document loading instantly from a single local HTML file
Note: For more detailed guidance, check out our official documentation.
Create fillable PDF Forms with Syncfusion
Ever wondered how to turn a plain PDF into a fully interactive form? With Syncfusion’s PDF Viewer, you can design fillable PDF forms right inside your web application. In this section, we’ll start with a simple PDF and guide you to add text boxes, checkboxes, radio buttons, and more, step by step.
Step 1: Enable form designer in the toolbar
To start creating form fields, click the form designer option in the built-in toolbar. This opens the Form Designer panel, which lists all standard form field types, such as;
Textbox
Password
CheckBox
RadioButton
ListBox
DropDown
Signature field
Initial field
Step 2: Select the required form field
Choose the form field that matches your use case. For example:
Text box: Capturing user details like Name, Email, or Address. Ideal for any free text input.
Password: Designed for secure entry of sensitive data such as Login Passwords or PINs.
CheckBox: Perfect for multiple-choice options like Agree to Terms, Subscribe to Newsletter, or Select Preferences.
Radio button: Best for single-choice options such as Gender Selection, Payment Method, or Yes/No Questions.
ListBox: Allows users to select one or multiple items from a list, e.g., Choose Skills, Select Interests, or Pick Categories.
DropDown: Ideal for compact menus where space matters, such as Country Selection, State, or Department.
Signature field: Used for capturing Signatures for approvals, agreements, or consent forms.
Initial field: Perfect for quick Initials in documents requiring acknowledgment or partial approval.
Step 3: Drag and drop the field
Once you’ve selected a field, simply drag and drop it anywhere in the PDF. This intuitive feature makes it easy to position fields exactly where you want them.
Drag and drop signature field
Add form fields programmatically in your PDF
Want to add form fields without using the toolbar? Syncfusion makes it simple with the addFormField method. Just pass the form field type and its property object as parameters.
Here’s an example that shows how to add multiple fields to your document:
These steps cover the basics of adding form fields using the toolbar and interacting with them programmatically, but Syncfusion offers much more. Explore all form field types and advanced customization options with this documentation.
Adding form fields is only the first step. Real customization happens when you make them look and behave exactly the way you want. With Syncfusion’s PDF Viewer, editing is easy:
Enable Form Designer mode.
Double-click any field to open its Properties dialog.
Adjust background color, border color, font size, alignment, and more, all with a few clicks.
This ensures your fillable PDF forms match your application’s design perfectly.
Customize field properties in Form Designer Mode
Customize PDF form field programmatically
Need dynamic control? Use the updateFormField method or field settings to change properties like background color, name, font size, and more on the fly. This is ideal for automated workflows or dynamic forms. The following code demonstrates modifying field properties by field setting:
// Properties to customize the signature field settings
pdfviewer.signatureFieldSettings = {
// Set the name of the form field element.
name: 'Signature',
// Specify whether the signature field is in read-only or read-write mode.
isReadOnly: false,
// Set the text to be displayed as a tooltip.
tooltip: 'Signature',
// Set the thickness of the Signature field. To hide the borders, set the value to 0 (zero).
thickness: 4,
// Edit the properties based on your needs.
}
Note: For detailed information on editing form field properties programmatically, please refer to our documentation.
Step 5: Seamless PDF form filling and data management
Once your form fields are ready, it’s time to put them to work. Filling interactive PDF forms transforms a static document into a dynamic data collector. Syncfusion makes this process effortless, ensuring a smooth user experience and accurate data.
Seamless form filling interactive fields ready for real user data
Update PDF form fields programmatically
Need to pre-fill forms automatically? Whether pulling data from a database or generating personalized content, the updateFormField method gives you complete control.
Note: For detailed information about updating PDF form field values programmatically, please refer to our documentation.
Import and export PDF form data dynamically for fillable PDF forms
Managing form data efficiently is critical for business workflows. Syncfusion provides built-in options to import and export form field data in formats like JSON, FDF, and XFDF.
Export data:
// Data must be the desired path for the exported document.
viewer.exportFormFields('Data', FormFieldDataFormat.Json)
Note: The Filename for importing the form fields should be placed in the desired location, and the path should be provided correctly.
This makes integration with databases, APIs, and automated workflows seamless. For complete details about exporting and importing form fields as objects, check out our official documentation.
Complete your PDF form workflow: Validate, download, and print with ease
Managing PDF forms isn’t just about filling them out; it’s about delivering a complete, seamless workflow. Syncfusion’s PDF Viewer lets you:
Thank you for reading! Choosing the right approach for building interactive PDF workflows depends on your project goals. If your requirements include advanced features like creating fillable forms, managing complex layouts, and delivering a smooth user experience, a comprehensive solution can save you significant development time and effort.
Think about your priorities:
Performance: Does your solution need to handle large documents efficiently?
Flexibility: Do you want full control over customization?
Integration: Should it work seamlessly with your existing systems?
Do you need a ready-to-use UI for quick deployment, or programmatic APIs for complete customization? Answering these questions will help you decide whether to build from scratch or use a feature-rich library that scales with your needs.
Syncfusion’s JavaScript PDF Viewer is a great choice if you’re looking for a complete solution. It offers a full set of features and ready-to-use components, making integration simple and helping you deliver interactive PDF workflows faster.
If you’re a Syncfusion user, you can download the setup from the license and downloads page. Otherwise, you can download a free 30-day trial.