Transferware Collectors Club - Patterns Database
About the Project
The Transferware Collectors Club needed to find a new ProcessWire programmer to continue development of their members only database application that enables hundreds of paying subscribers to search the nearly 18,000 records of ceramic patterns and their sources. The web application had been created and maintained by a previous developer for over seven years prior to my involvement in 2020.
After having done various updates and obtaining a better understanding of the system and its shortcomings, Transferware Collectors Club agreed to pursue a complete overhaul of their web application in order to make it more user friendly, add new features, improve how the data was organized and refactor the code to provide maintainability for the future.
UI Redesign
The original user interface was completely redesigned and modernized in countless ways. UIkit was used as the design framework. The patterns search saw additional parametric search options, advanced option selection modals for category and border filters, pattern quick view capability and the ability to refine searches further.
The search results contain highlights of the text inputted. Users can bookmark patterns and save their search results. Administrators have a custom dashboard which provides key data insights such as user activity and metrics of various data types.
HTMX
In 2021, HTMX gained considerable popularity, along with similar libraries that adopted the "HTML Over the Wire" approach. Using this library allowed the system to gain the benefits commonly associated with single-page applications, including partial page updates, page components and overall speed improvements. This eliminated the need for traditional frontend JavaScript frameworks, such as React and Vue, which would add unnecessary complexity, higher development costs and a complete (and less than ideal) transformation in development approach.
Ranked Search Results
The original application used Elastic Search to aid with improved search results. During development, it became apparent that the need to have ranked results could be done in ProcessWire exclusively and more precisely if it supported a special querying feature. Therefore I advocated for a feature request that made developing ranked search results possible, which allowed for the elimination of the Elastic Search dependency. Using a special algorithm that takes the pattern title, pattern description, thesaurus words and other filters into consideration, the results now appear in an order of most to least relevant.
Big Huge Thesaurus Integration
One special feature for the patterns search included the ability to generate synonyms based on the search terms entered and use those synonyms as part of the search. To accomplish this, an integration with Big Huge Thesaurus was developed that provides synonyms in real time.
aMember Pro Integration
aMember Pro is the membership management and billing system that the club uses to manage members. It was previously integrated with ProcessWire in an indirect way that authenticated users with cookies. The big limitation with this approach was it did not allow members to have their own user accounts in the ProcessWire Patterns database, treating them as anonymous users without the ability to save their own data such as favorites and search history. Therefore the integration was redeveloped to be more direct by bootstrapping aMember Pro, allowing ProcessWire and aMember to communicate seamlessly, overcoming previous limitations.
Technical Specifications
- Category
- Product Catalog
- Platform
- ProcessWire
- CSS Framework
- UIkit
- Advanced Features
- BigHugeThesaurus Integration
aMember Pro Integration
Ranked Search Results - Related Articles
Client Testimonial
We needed a new ProcessWire expert to continue developing and maintaining our custom database app after our previous developer retired. Jonathan completely reenvisioned and modernized our existing system with the ideas he brought forth. In my judgment, while keeping within our contractual fee agreement, Jonathan delivered far more than what was outlined in our requirements statement. The TCC could not be more pleased with his work.