Skip to content

vkh-cr/festapp

Repository files navigation

Festapp

Festapp is a cross-platform mobile and web app for festivals, conferences, and events. It provides organizers and attendees with powerful tools like schedules, maps, notifications, tickets, forms, and much more.


Features

  • Available on Android, iOS, and Web.
  • Event is available for offline use (Android, iOS).
  • Dark and light modes are available.

  • Schedule
    • Timeline – Schedule overview by time and day.
    • Event detail – Includes: Time, Place (with link), Content, Subevents, Sign In/Sign Out button.
    • Timetable – View event entries on the axes of Time and Place.
    • My schedule – Attendee can add event entries to their own list.

schedule2 schedule1 schedule5 schedule3

  • Map
    • Map with current user location, places, and paths with custom icons and descriptions. It is also possible to set up an offline map (Android, iOS).

map1 map2 map4

  • News/Notifications
    • Receive news and push notifications relevant to the event.
    • Push notifications are supported on all platforms – Android, iOS, and Web.

news3 news2

  • Info/Songbook/Game

    • Various information about the event, a Songbook with font-size increase/decrease, and a groups-based code-guessing game.
  • Administration/Feature settings

    • Overview of all event data, map, groups, users, rights, and other settings.
    • Setup of multiple events.
  • User/Companions/Workshops

    • User profile with personal data.
    • Ability to import users from a table.
    • Creation of events with limited capacity (workshops) and creation of companions.
    • QR code for workshop entry verification.

user1 user3 user4 user5

  • Ticket/Form/Seat reservation
    • Support for creation of custom forms (similar to Google Forms) with priced products.
    • Creation of custom tickets with custom graphics.
    • Creation of a seat reservation component.

form1 form3 form4 form5

  • Orders/Transactions

    • Order management, bank payment synchronization, automated sending, and creation of paid tickets.
  • Email Templates

    • Customization of all email templates.

email1 email2 email3

  • Ticket scanning
    • QR-code-based ticket verification.

Architecture

This project is built using the Flutter framework and the Dart programming language.

For the backend, it uses Supabase, a serverless platform. It includes:

  • Deno functions written in TypeScript
  • PostgreSQL scripts for database operations

Setup

For a helpful step-by-step guide on creating your own app, see howto.md.


Currently in production

Under similar names usually available in AppStore and Google Play Store.


Latest development

2024.11

  • Cyber Space game added to the app, enabling group gameplay and submission of codes found in the real world.
  • Schedule event editing page introduced, along with a new quick add button for the schedule.
  • Songbook now supports a changeable dark/light theme and adjustable text size.
  • Food support added, including information about user's choice.
  • Accommodation support added with links to places on the map.
  • Invitation based system implemented using invitation codes.
  • Progress dialog in DataGrids now indicates success or error, with the option to cancel mid-action.
  • Update prompt now allows setting a minimum version requirement for each platform.
  • Launch event logging includes app version and platform details.
  • Install screen updated with enhancements and instructions.
  • Profile button moved to the bottom app bar.
  • Admin page refined with sub-tabs, preparing for dynamic configuration features.

2024.10

  • Support for multi-organizations.
  • New bottom app bar.
  • Dark/light mode, styles, and colors refactoring (e.g., clickable links are in different colors now).

2024.09

  • Refactoring and support for multiple events.
  • Support for linking multiple events.

2024.08

  • Admin dashboard to support multiple events.
  • Better support of linking of anything inside the app.
  • Optimized loading for information.
  • Compression for large images and automatically converting links, emails, and phone numbers to clickable hypertext.
  • Colorful emoji for web.

2024.07

  • Full support for offline display mode on web (and pwa app).
  • Notifications support for web (and pwa app).
  • Settings page (enable notifications, language).
  • Install page with links to install app on phone or PC (example: https://live.festapp.net/#/install ).

2024.06

  • Optimized data usage for events and information.
  • Enabled custom icons for map places.
  • Zooming in/out for Timetable.
  • Displaying current time in Timetable and Time Travel component.
  • Generated QR code for users and companions.
  • Approver page for checking QR codes and workshop attendees.

2024.05

  • User registration flow and sign-up page.
  • Companion feature: Users can create a limited number of companions and assign them to workshops.

2024.04

  • Reset password flow.
  • Enabled event type and hiding.

2024.03

  • Specialized page for song lyrics.
  • Database and URL support for multiple events.

2024.01

  • Full support for offline display mode (if connection is not available, data from cache will be used). Simply open the application once and data will be loaded in the background.
  • Timetable display of the program (scrollable page with a time axis and locations).
  • Creation of my program using the + button (even without the need to log in).
  • Full support for URLs (ability to link to pages in the web version of the application).
  • Ukrainian language added among the languages.

About

The app was originally developed by a team of volunteers for Absolventský Velehrad event in 2023.