Hackathon organizer infrastructure contains config and startup files.
https://gentle-froyo-5a1b8e.netlify.app/
The Hackathon Organizer is a great choice when you and your organization face the challenge of organizing a hackathon. This solution contains everything you need to easily prepare and hold the entire event. It provides a step-by-step process for creating a hackathon, allowing you to customize information about your company, set the event description, and upload a logo. Users with ideas for awesome projects can create a team by providing necessary information that can attract other members. Alternatively, if a participant is looking for a challenge, he can simply update his profile by choosing from many skill tags that will be used to find a corresponding team that matches his skill set. Users also have access to an interactive schedule where selected mentors can create meetings with participating teams. There is a real-time notification system and an extensive chat system that supports audio/video and screen sharing to enhance team collaboration on projects that can change the world.
- Create and update hackathons and teams
- Tags system used to help users find teams matched by their skills
- Team chat room that supports text, video, voice, and screen sharing
- Interactive schedule that allows for creating meetings with mentors
- User profile customization
- Score based team rating
- Leaderboard that counts and presents points given by the jury to teams
- Image files upload
- Real-time notifications and team invitation system for users
- And more
You can find more information about Angular frontend here
Here you can find more details about certain services
- hackathon-write-service
- hackathon-read-service
- user-write-service
- user-read-service
- messaging-service
- discovery-service
- config-server
- api-gateway
Application work in microservices architecture. In order to start you need to have Docker and Docker Compose installed.
Certain services must be built locally using docker build -t container-name:1.0 . For example use docker build -t hackathon-write-service:1.11 . in project folder after files modification. If services are built you can use docker compose up command.
To unlock Vault in development mode use keys from vault-dev.txt file.
You need to add env variables in .env file before running production. After that you can use docker compose -f docker-compose-prod.yml up to start project. Containers will be automatically downloaded from container registry.
- SpringBoot
- Docker
- Netflix Eureka
- Keycloak
- HashiCorp Vault
- PostgreSQL
- Testcontainers
- OpenVidu