Microservice overview
This page is designed to give a broad overview of the currently done, work in progress and planned microservices. When considering (starting) working on one of these microservices, use the discussion link provided to get more information about a microservice and voice your opinion.
Microservices
Color code: | Suggested | Accepted | In Progress | Done | Rejected | Outdated |
---|
Microservice name | Code | Responsible | Discuss | API | Description |
---|---|---|---|---|---|
Micro service example (and node version) | EXAMPLE | Confluence - Development | An example module. Responsibilities and functionalities:
| ||
Core | CORE | Derk, Nico | Confluence | API | The core module providing the very basics required for all other modules. Responsibilities and functionalities:
|
Core-Elixir | CORE | Nico | API | A rewrite of the php core in elixir by Nico. Designed as a drop-in replacement for the core because core-development was stalled a bit due to personal reasons. Responsibilities and functionalities
| |
Loginservice | Nico | API | Login and signup-functionality, separated from the core because Nico used it for another project. Responsibilities and functionalities:
| ||
Events (and frontend) | EVENTS | Nico, Sergey | Confluence | API | All event-related stuff. Creating, modifying, displaying and deleting events, approving events, managing events' organizers Responsibilities and functionalities:
|
Applications (and frontend) | Nico | JIRA - Issue | Everything related to the events' applications for the generic events (not statutory and not SU). Applying for the events, managing applications, approving participants. Responsibilities and functionalities:
| ||
Service registry | REGISTRY | Nico | JIRA | API | Helps with service discovery based on categories or servicenames and provides an access token registry. Responsibilities and functionalities:
|
Traefik | TRAEFIK | Nico | Confluence | Open-source reverse proxy for load balancing and health checking
| |
Logging | LOG | Logging microservice for the entire system | |||
Alastair | FOOD | Nico | Confluence | Food planning module - A private project from Nico | |
The Central Frontend | Nico | Confluence | Joining the frontend pages of all services into one and serving it | ||
LDAP support | JIRA - Issue | ||||
Notifications - cast | NOTIFY | Nico | Confluence | API | Receives notification requests from services and casts them to notification providers |
Notifications - onscreen | NOTIFY | Nico | API | Stores onscreen notifications which the user can fetch with a simple api call whenever he wants, no push feature | |
Notifications - email | NOTIFY | Probably just a wrapper around an existing service like sendgrid | |||
Notifications - push | NOTIFY | Push Notifications | |||
Cron Module | JIRA - issue | Regularily reoccuring tasks | |||
Statutory microservice | STATUTORY | Sergey | not there yet |
| |
Voting | Candidatures, Evaluation (like impact measurement for events), also Recursion (-; | ||||
Reporting | Generate anonymous reports with user and member statistics. | ||||
Survey | Requirements | Add survey/questionnaire support, integrating it within OMS | |||
Finance | Fee management. Event budgeting. Parts of this are inside the core module at the moment, will be moved out of oms-core for this. | ||||
Storage | A possibility to backup data to external systems easily. | ||||
Travel | for example: AEGEE-couchsurfing | ||||
Gamification | E.g. create badges like "Visited 5 events" or "Attended 3 Agorae in a row" | ||||
Comments | Make commenting everything possible. Reuse of disqus might be the way to do it. | ||||
SU Webfrontend | Summer University Website: Will be a little different from the usual events frontend, maintained and developed by SUCT. |