Community Application with Laravel
A new digital home for the alliance of young farmers in Brandenburg.
A comprehensive web app for presentation purposes
Situation:
The alliance for young farmers in Brandenburg asked me to support their new website development. The main objective was to use the site as a communication hub to their external stakeholders (new members, press, partner). We set up a small project team with Willi Lehnert (owner), Stefan Hofer (Designer), and myself in a developer role. In this setting we discovered the business requirements in coordination with the executive board.
Tasks:
- Authorization system: User can login as admin, authors, or members with corresponding rights in a dashboard
- Member sites: Members can present their own farm on a site within the network
- Map integration: Members are geographically located on a map
- Media: Easy integration of Images, videos, and files on each site
- Projects: Projects of the network can be presented on the website, differentation among own and external projects is critical, expired projects are displayed in an archive
- Events: Authors can create events and publish registration information
- Hosting: A test- and production environment need to be set up
- Newsletter: The existing third-party newsletter service need to be integrated
Actions:
I picked Laravel as my backend of choice. The reasons therefore are manifold:
- it is a developer friendly MVC system with among others a great template engine (Blade), a secure authentication scaffolding, and a powerful database wrapper (Eloquent)
- I can leverage on strong open source packages like the battle-tested permission, medialibrary, and tags contributions from Belgian digital powerhouse Spatie
For interactive frontend elements I used Vue components (e.g. image gallery and map) that are integrated into the blade views. For the implementation of Stefan's designs I used Tailwind. Moreover, the pricacy-first web analytics tool fathom was perfectly suited for the product as it provides basic, GDPR conform web analytics data.
Result:
Since going life in 2019 the website is actively used (>3.000 visitors, >11.000 page views) and well received by the target audience. A part-time author contributes content updates regularly. Currently the site hosts over 30 member profiles, various interview and video contributions and event announements.
The product is actively maintained. I have developed new feature requests (media center, admin config settings, page templates) and have fixed bugs soon after reporting.