Thanks to visit codestin.com
Credit goes to github.com

Skip to content

gorazdbiskoski/internship-management

 
 

Repository files navigation

Internship Management

An application for managing university internships using Domain-Driven Design, CQRS, and Event Sourcing, built as an alternative to internships.finki.ukim.mk.

It supports students, companies, and coordinators throughout the internship lifecycle - from applications and journal submissions to validation and archiving - with a backend built around aggregates, commands, events, projections, handlers, and sagas.

Tech Stack

  • Spring Boot (Kotlin) + Axon Framework - Core backend that handles internship operations, events, and business logic.
  • Spring Cloud Gateway - API Gateway which routes requests to backend services.
  • Keycloak - Manages authentication and authorization.
  • Apache Kafka - Event-driven messaging between services.
  • Spring Cloud OpenFeign - HTTP communication between services.
  • Consul - Service discovery.
  • PostgreSQL - Database.
  • React (TypeScript) - Frontend.
  • Tailwind CSS - Styling.
  • shadcn/ui - UI components.

Features

Internship Lifecycle Management

  • Companies create or assign internships to students.
  • Students accept or reject internship offers.
  • Students submit weekly internship journals.
  • Companies validate or request changes to journals.
  • Coordinators perform final validation.
  • Administrative staff archive completed internships.

Additional Features

  • Email notifications on key internship status changes.
  • Interactive journal tracking with status change history and comments.
  • Role-based access control for students, companies, coordinators, and administrators.

Screenshots

1 2 3 4 5 6 7 8 9

About

Microservice for managing student internships, built using Domain-Driven Design, CQRS and Event Sourcing principles.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 61.0%
  • Kotlin 36.1%
  • Java 1.6%
  • CSS 0.7%
  • HTML 0.2%
  • Dockerfile 0.2%
  • JavaScript 0.2%