Apollusia is a calendar tool for coordinating events with multiple people. It is a web application written in Angular with NestJS as the backend. A running instance of the application can be found under https://apollusia.com/. Feel free to check it out!
β Star this project on GitHub β it motivates us a lot!
Apollusia offers a variety of features to make event coordination as easy as possible. All features are completely free and can be used without registration.
- Anonymous participation
- Participants can vote without entering their name
- Editing participation
- Participants can edit their participation
- Blind participation
- Participants can't see other participants until they participate
- Comments
- Add comments to a poll
- Participation limit
- Limit the number of participants
- Maybe Option
- Friendlier event selection with a Maybe option
- Deadline
- Set a deadline for new participations
- Rich Text and Links in Description
- Add Markdown formatted text and links to the description
- Events of varying length
- Every event can have its own length
- Event Notes
- Add notes to events to provide additional information
- Autofill
- Create many sequential events automatically, with breaks and on multiple days
- Cloning polls
- Clone polls to start off with the same options
- Postponing events
- Move all events to a later date
- iCal Export
- Keep track of your polled events and 1-1 meetings using your favorite calendar app
- Invite Participants
- Invite participants via email or other means
- Notifications
- Receive quick updates to polls and participations via Push Notifications on all your devices
- Email Updates
- Receive detailed updates to polls and participations via Email
- History
- See all changes to a poll
Create an .env file in the backend directory and add the following environment variables:
VAPID_PUBLIC_KEY=<vapid public key> # for push notifications
VAPID_PRIVATE_KEY=<vapid private key> # for push notifications
KEYCLOAK_CLIENT_SECRET=<keycloak client secret>
AUTH_PUBLIC_KEY=<keycloak public key>
CONTACT_OPERATOR=<contact operator>
CONTACT_MAIL=<contact email>
CONTACT_ADDRESS=<contact address>VAPID keys can be generated using the following command:
npx web-push generate-vapid-keysTo set up Keycloak, follow these steps:
- Run it with
docker compose up -d keycloak - Go to http://localhost:8080/auth
- Login using default admin credentials:
- Username:
admin - Password:
root
- Username:
- You can get the Keycloak Client Secret like this:
- To get the Keycloak public key, follow these steps:
These docs will help you get started and contribute smoothly.
-
CONTRIBUTING Learn how to contribute, submit issues, and create pull requests.
-
CODE_OF_CONDUCT Review our community guidelines to foster a respectful and inclusive environment.







