Design for a Contest-Oriented Platform - Handling Shared Kernel

26 Views Asked by At

I'm creating a HackTheBox-like platform with Django using Domain-Driven Design. It supports both individual and enterprise users who can solve challenges and participate in contests. Enterprise members also have exclusive challenges and contests.

My system is divided into four Django apps: Users, Enterprises, Challenges, and Contests, each handling related tasks.

I plan to treat challenges as a shared kernel accessed by both Users and Enterprises apps. However, I'm uncertain how a user can retrieve and solve a challenge within this design.

Am I structuring these Django apps effectively for my requirements? How can I manage a shared kernel for challenges to let users retrieve and solve them? Any key endpoints missing?

Any advice is appreciated. Thanks!

0

There are 0 best solutions below