Portfolio
A contest platform for filmmakers
About the project
The backend is built on the Symfony PHP framework. The application that manages the contest flow and moves projects from round to round is built with Vue.js.
Project description
The task was to build an automated online platform for running filmmaker contests.
It needed a personal account with registration and sign-in by email or through Facebook. Several user types can register:
-
Contest participants
Participants add and publish their projects through dedicated forms.
- Experts who score the projects submitted to contests.
- Organizers - the people who create contests.
Each role has its own set of capabilities on the platform.
An organizer can view all projects and their scores, move projects from round to round and pick favorites.
When a contest ends, the platform generates a PDF report for every project that took part and uploads everything to Yandex.Disk cloud storage.
Notes
The trickiest part technically was designing the database structure for the project forms, which contain more than 150 different fields - MySQL wouldn't allow a table with that many columns.
The complex scoring logic and round-to-round promotion called for a fairly involved Vue.js application.