National Academy of Design
Editorial
Founded in 1825, the National Academy is the leading honorary society for visual artists and architects in the United States.
WSDIA (a NYC based branding agency) was reached out to by the National Academy of Design to help with rebranding / web design efforts. Having worked with WSDIA before, I was contacted to lead development on the website. They wanted to create a heavy editorial site that was still engaging and stood out among websites of their industry.
Highlights
The site had three main areas. They have Perspectives, Events, and The Academy. Perspectives and Events are both similar in that they are more content focused. They have richer view pages and can be explored through searching and filtering. The Academy is more so about specific academicians and the organization itself.
Module System
Editorial heavy content (such as Perspectives and Events) had access to a dynamic module system. This module system could then be used to create diverse and rich pages with ease.
Tagging System
Perspectives and Events also contained tags. These tags could then be used to view other entries that were tagged the same.
Search & Filtering
Perspectives and Events could also be filtered and sorted. The site also has a global search bar which would perform a custom query that would check across all content types.
Dark Mode / Light Mode
And as a nice touch, the client requested having a light and dark mode. This would defaulted based on browser's default but could always be toggled.
Challenges
The biggest challenge was organizing the data structures. Many of the types of content shared the same attributes. However, they also contained their own unique fields (normally that can be filtered off of). This required a lot of planning not only from a database perspective but also how we handle this on the front end. Solutions included creating materialized views that aggregated content and normalized field names, and creating modular components with component slots.
Development Specs
- Angular
- Strapi CMS
- NodeJS
- PostgreSQL
- AWS s3 / cloudfront
- DigitalOcean App Platform