Find a file
2025-01-05 17:39:03 +01:00
.idea chore: Use proper fragment container views 2024-12-31 00:50:08 +01:00
app fix(eventDetails): Fix showing time for instant events 2025-01-05 16:57:57 +01:00
gradle build: Downgrade coreKtx to 1.12.0 to fix building 2024-12-22 20:24:49 +01:00
showcase feat: Add showcase images to readme 2025-01-05 17:21:11 +01:00
.gitignore feat: Initial commit 2024-12-22 15:35:56 +01:00
build.gradle.kts feat: Initial commit 2024-12-22 15:35:56 +01:00
gradle.properties feat: Initial commit 2024-12-22 15:35:56 +01:00
gradlew feat: Initial commit 2024-12-22 15:35:56 +01:00
gradlew.bat feat: Initial commit 2024-12-22 15:35:56 +01:00
LICENSE.txt chore: Add GPL license 2024-12-22 20:28:51 +01:00
README.md chore: Improve readme UI, use raw HTML for the table 2025-01-05 17:39:03 +01:00
settings.gradle.kts feat: Add color picking support for event creation 2025-01-01 18:56:52 +01:00

Event Management Frontend

The Event Management Frontend is a native Android application developed in Kotlin. This app provides a comprehensive calendar-based event management system designed for seamless user interaction.

This project was created as the final assignment for AP7PD and AP7MP subjects.

It integrates with a custom backend REST API to manage users, events, attendees, and categories effectively.

Overview / Key Features

  • Monthly Calendar View: View events in a grid layout by weeks and days.
  • Daily View: Easily browse and manage daily events.
  • Event Management: Create, edit, and delete events with support for categories and attendees.
  • User Authentication: Register and log in with robust access and refresh token support, ensuring secure and seamless user sessions.
  • Error Handling: Gracefully handles API errors, including scenarios where the backend is unreachable.

Backend requirements

The application requires a running backend API for full functionality. The backend is implemented using FastAPI in Python.

You can find the source code and detailed deployment instructions for the backend API at: Event Management Backend Repository.

Tip

The app supports dynamic configuration of the API base URL, allowing you to deploy the backend on any server or cloud provider of your choice. If you wish to test the app from android studio, you can deploy the backend locally (http://localhost:8000) and set the base URL to http://10.0.2.2:8000. This will allow the Android emulator to access the local backend server. Note that this is also the default value.

Showcase

Below is a showcase of key features and screens in the application:

Image Description
API Unreachable Error screen, shown whenever the API becomes unreachable.
Login Screen Login screen for user authentication.
Base URL Change Screen to update the API base URL, available from various pages.
Register Screen User registration screen.
Month View Monthly calendar view to browse events.
Day View Daily event view with event details for that day.
Edit Duration Event Edit screen for duration-based events.
Edit Instant Event Edit screen for instant events.
Invite User to Event Interface for inviting users to an event.
Duration Event Details Detailed view of a duration-based event.
Instant Event Details Detailed view of an instant event.
Categories Overview List of event categories of the user.
Create New Category Form to create a new category.
Updated Categories Updated list with a newly added category.
Settings Screen Settings menu for app configuration. Only available when logged in.
Notification: Invite Notification about an incoming event invite.
Invite Preview Preview of the event from the invite.
Notification: Invite Accepted Notification for the invite after acceptance.
Day View with Invite Day view showing the invited event.
Invited Event Details Details of an event the user was invited to.
Notification Accepted John Notification about a user accepting an outgoing invite.
Notifications Cleared Screen showing cleared notifications.