Inspiration
Inspiration for this platform stemmed from the urgent need to unify and mobilize the citizens of Hackunia during an unprecedented alien invasion. Recognizing the importance of real-time communication and situational awareness, I developed a platform that enables Hackunia citizens to stay connected, share vital news, and report alien sightings. By integrating a chat feature for direct communication with Spacetec and a collaborative map for tracking alien movements, this project aims to empower individuals and communities to work together effectively. The hackathon's theme inspired me to create a comprehensive solution that leverages technology to enhance safety and coordination in a time of crisis.
What it does
This platform provides Hackunia citizens with essential tools to communicate and coordinate during the alien invasion. It features a real-time chat that allows users to communicate with each other and directly with Spacetec for assistance and updates. Additionally, the platform includes a news page where users can post and share the latest information. A collaborative map enables users to add markers and provide titles like 'I saw aliens here,' helping to track alien movements and enhance situational awareness. By facilitating efficient information sharing and community engagement, the platform aims to improve the safety and resilience of Hackunia's population.
How I built it
In this project, I utilized ASP.NET for the backend, implementing two key services. The first service handles CRUD operations by communicating with the database to retrieve, create, update, and delete data. The second service employs WebSocket technology through SignalR to facilitate real-time chat functionality. This service communicates with the first service via Kafka, ensuring that all messages are saved in the database. The frontend was developed using React, creating a responsive and user-friendly interface that enables seamless interaction with the backend services. This combination of technologies ensures robust data management and real-time communication for the platform's users.
Challenges I ran into
Implementing Kafka and SignalR presented several challenges during the development of our platform. Integrating Kafka for message queuing and communication between services required careful configuration and understanding of asynchronous data handling. Ensuring that all messages were reliably stored in the database while maintaining real-time performance posed initial synchronization and latency issues that needed fine-tuning. Additionally, integrating SignalR for real-time chat functionality involved overcoming compatibility and scalability concerns, particularly in managing concurrent connections and ensuring seamless communication across diverse user devices and browsers.
What I learned
Developing this project taught me valuable skills in implementing SignalR and Kafka. SignalR enabled me to create efficient real-time communication channels, crucial for responsive chat features across various devices. Integrating Kafka provided insights into managing distributed data streams and ensuring reliable message processing and storage. Overcoming these challenges enhanced my problem-solving abilities and deepened my understanding of asynchronous communication and event-driven architectures, reinforcing the importance of robust backend solutions in scalable applications.
Built With
- asp.net
- kafka
- react
- sql-server
- websockets
Log in or sign up for Devpost to join the conversation.