Simplifying member management and interaction
Notification flashes are handled by Turbo Streams, the card has a cool tilt effect thanks to TiltJS.
The platform’s objectives were the following:
- Simplify the management of members information by ASFE’s staff
- Increase the accuracy of members’ data
- Centralize different member related tools and processes
- Offer members a dedicated space and expanded opportunities for interaction with ASFE
This took quite a lot data migration and cleaning efforts, but the result was a standalone, tailor-made Ruby on Rails 7 application that does not depend on the legacy ASFE website or scattered expensive third-party tools. It also offers a fluid and responsive user experience thanks to Hotwire!
The app is now capable of interacting with members continuously without external workflows by:
- Sending confirmation emails
- Providing real time notifications/reminders
- Giving access to a simplified individual account to update information
- Fetching and updating ASFE’s Mailchimp audience via a custom made API
Building a powerful backoffice with ActiveAdmin v4
This was also the perfect opportunity for me to implement the latest version of ActiveAdmin with Flowbite and TailwindCSS mentioned here! It helped me build a complete member management backoffice in a short amount of time, with very useful features:
- Multisearch and filtering - taken care of by Ransack
- Role based authentication with fine-grained user permissions thanks to Devise and CanCanCan respectively
- Custom made activity dashboards and dataviz panels powered by Chartkick and Google charts
- CSV exports, dynamic pagination, Google Maps geocoding, standardized ISO 3166 country labelling and more!
In conclusion, working with this stack was a breeze, and ASFE expressed high satisfaction with the new platform. We’ve already measured significant improvements in usability and member engagement. Plus, tackling this debt with a centralized set of tools means ASFE now has a solid foundation to manage and expand its data. For me, this was an excellent opportunity to practice Rails callbacks and service integration in Plain Old Ruby Objects.
Disclaimer - None of the data showcased in this article exists in production - No sensitive information is revealed