MiniSpace is a multifaceted application designed to enhance student life by providing a robust platform where students can explore, register, and participate in various events. These events range from cultural to educational and social, aiming to enrich the academic community's vibrant life.
- Event Interaction: Students can browse through available events, register to participate, and receive updates and notifications about upcoming activities.
- Social Interaction: The platform allows students to connect with friends, share event experiences, and interact through posts and discussions.
- Administration Interaction: Students can report issues directly through the app, ensuring a seamless and user-friendly experience.
- Event Management: Organizers can create and manage events, including setting details like location, time, and description.
- Participant Engagement: Tools to communicate with participants, manage attendance, and gather feedback post-event to improve future events.
- Data Analysis: Access to real-time data analytics to monitor event success and participant engagement.
- Enhanced Event Filters: Friends can see which events others are attending, making the event choice more social.
- Invitations: Ability to send and receive invitations to events, enhancing the social experience.
- User and System Oversight: Admins have the tools to manage user issues and system functionality, ensuring smooth operation.
- Content Moderation: Capabilities to monitor and manage the content to maintain a respectful and constructive community environment.
- Events: From browsing to attending and reviewing events.
- Social Interactions: Managing friends lists, sending invitations, and sharing experiences.
- Administration: Handling user reports, system updates, and data analysis for continuous improvement.
- Framework: Blazor - single-page web application framework being a part of the .NET ecosystem
- Components: Radzen and MudBlazor - used to enhance aesthetics and reponsiveness of web application
- Framework: Backend services are built using Convey, a set of libraries optimized for building .NET microservices.
- Architecture: Implements a microservice architecture with an emphasis on the CQRS pattern, separating read operations from update operations to enhance performance and scalability.
- Services:
- Identity Service
- Students Service
- Events Service
- Posts Service
- Friends Service
- Comments Service
- Reactions Service
- Organizations Service
- MediaFiles Service
- Reports Service
- Notifications Service
- Email Service
- API Gateway: Utilizes Ntrada for routing and managing requests across multiple services through a single entry point.
- MongoDB - document-oriented database
- Consul - microservices discovery
- RabbitMQ - message broker
- Fabio - load balancing
- Jaeger - distributed tracing
- Grafana - metrics extension
- Prometheus - metrics extension
- Seq - logging extension
- Vault - secrets extension
Stay informed about the code quality with our integrated Codecov badge that displays the current code coverage percentage:
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
Please refer to CONTRIBUTING.md for more details.
Distributed under the Apache License. See LICENSE for more information.
- Project Link: https://github.com/SaintAngeLs/distributed_minispace
- Live Demo: minispace.itsharppro.com
MiniSpace is made possible thanks to the contributions of several individuals. Here is a list of the remarkable people who have contributed to this project:
- @eggwhat
- @an2508374
- @SaintAngeLs
- @olegkiprik
- @zniwiarzxxx
Thank you for considering Mini Space for your academic community engagement needs!