What's New in PHPMaker 2022
PHPMaker 2022 is another huge upgrade from previous version. It is loaded with a bunch of new features, including many frequently requested ones. PHPMaker is probably the most powerful and flexible product of its kind, and yet still easy-to-use as always.
IMPORTANT If you upgrade from previous versions, please note that there are some breaking changes in this version, make sure you read
Migrating to v2022 first.
Internationalization (i18n) by PHP and JavaScript
- Auto locale settings by native PHP Intl extension and JavaScript Intl object
- Format and parse by ICU number, currency and date/time formats

Web Push Notifications
- Option to allow anonymous users to receive notifications
- Generate server public/private keys
- Users can enable/disable notifications
- Administrators can send notifications to selected or all subscribers

Enable notifications

Receive notifications
Two Factor Authentication (Google Authenticator)
- Opt in/out or forced 2FA
- Backup codes
- Administrators can reset user secret

Column Visibility
Show/Hide table columns in List page during runtime

Multi-Column List Page - Table/Cards Views
- Multi-column cards by Bootstrap Cards
- Responsive multi-column layout
- Improved list options button and 4 positions (top/bottom-left/right)
- Switchable between regular table view and cards view by Ajax
- Support Custom Template in both views
- Support Bootstrap card-* classes

Table view

Cards view with card-* classes
Custom Template Card
Custom Template for cards in Multi-Column List Page

Horizontal cards
Preview Field
Preview a field as expandable table row

TEXT Edit Tag Input Type
- Selectable input types for text boxes. Supported values: text, color, email, month, number, range, search, tel, url, and week
- New URL validator

Bootstrap 5.1
RTL
- Detect RTL languages by language ID
- Generate and use RTL stylesheets automatically

Chart.js 3.5
- With chartjs-adapter-luxon, chartjs-plugin-annotation and chartjs-plugin-datalabels
- Support formatting by locale
- Option to show percentage in Pie/Doughnut charts

Improved Themes
- 19 theme colors with Bootstrap 5 and AdminLTE 3
- User image and user name in sidebar
- Sidebar search (for searching menu items)
- Navbar search (as Quick Search input for tables)

Table Header Filter
- Excel filter style
- Work together with other fields in Extended Search
- Searchable
- Pagination (Infinite Scrolling)
- Dropdown positioning by Popper

Improved File Upload
- New default look with dropzone
- Option to use Bootstrap File input

Improved Modal Lookup
- Pagination (Infinite Scrolling)
- Lookup cache aware
- Draggable

Improved Date/Time Picker (Extension)
- Dropdown positioning by Popper
- Support ICU date format
- Auto internationalization by native JavaScript Intl object

English |

Chinese |

Arabic (RTL) |
Improved Detail Preview (Extension for Registerd Users Only)
- More project level options
- Detail table tabs with dropdowns
- Support preview by expandable table row, Bootstrap Modal, Popover or Offcanvas

Offcanvas
Leaflet (Custom View Tag for Registerd Users Only)
- OpenStreetMap (OSM)
- Mapbox (requires Mapbox access token)
- Marker clustering
- Geocoding

OpenStreetMap (OSM)

Mapbox
npm Packages

Template and Extensions as npm Packages
- Easy update by npm update
- No more write permission issues
- Use semantic versioning
- Developers can publish their templates/extensions to npm registry by npm publish for sharing
- Support showing README.md written in Markdown

Improved Code Editor
Browser-based code editor with rich features (Requires WebView2 Runtime)

Auto-complete field names

Better Find and Replace

Indentation by Tab and Ctrl+Tab

Many more other commands
Auto-Focus
- Focus the first field on page fully loaded
- Focus first error field after server side validation


Improved AutoSuggest
- Pagination (Infinite Scrolling)
- Lookup cache aware
- Dropdown positioning by Popper
- Support RTL
Improved Color Picker (Custom Edit Tag)
- Compatible with Bootstrap 5
- Dropdown positioning by Popper
- Support custom options
New Advanced Settings
- Generate route groups - Allow disabling for better performance
- Use route cache for production - Allow compiling route cache for better performance
- Lookup page size - Page size for infinite scrolling during Modal lookup
- Filter page size - Page size for infinite scrolling in table header filter
- Navbar Quick Search
- Use native SELECT tag for select-one fields
- Use drop zone for file upload fields
- Multi-column List page grid CSS class
- Multi-column List page card CSS class
- Multi-column List page card left column CSS class
- Show percentage in Pie/Doughnut charts
More
- Require PHP >= 7.3
- Use globally installed Node.js and npm
- DBAL 3
- Multiple Parent User ID
- Improved HTML preview in UI by Webview2 Runtime
- Improved Ajax lookup performance (fewer HTTP requests and SQL queries)
- Improved server/client side validation in Master/Detail forms
- Option to use native <select> tags for select-one fields
- Export report with charts to PDF (for S3)
- Support Row_Inserting/Inserted/Updating/Updated server events during import
- Allow more fields in Extended Search for Crosstab reports
- Allow setting lookup field user values in server event
- Allow null values with referential integrity if key fields are not required field
- Paper size and Word version settings for PHPWord extension (for registered users only)
- Use JavaScript ES6
- Use Pace.js to show page loading
- Replace Moment by Luxon
- Select2, SweetAlert2, Date/Time picker, TimePicker, CKEditor and tinyMCE updated
- Remember folder of project file after opening a project (UI)
- Improved docs on website
- Many other minor improvements