Week #3

Week #3 #

Implemented MVP features #

1. Functional user journey #

  • Start: User visits Main Page
  • Views: List of ContestsContest Page
  • Personal Dashboard: Personal account view
  • Submission user’s solution

2. MVP features #

CategoryFeaturePR / Commit
AuthenticationJWT login/signup (GoTrue) + Casbin RBAC№19
CRUD ServicesContests, Submissions, Users, Tasks№19
gRPCClient in API№22
RunnerDockerized Verilog sandbox№23
Frontend UIBasic design: main page, contest list/page, personal account№18
DevOpsDockerfiles & docker-compose setupCommits: Improve Backend’s Dockerfile and main.go, fix(devops): GoTrue volume changed
CI/CD pipeline (lint, format, staticcheck, tests, Docker Hub)Actions run pushing changes to dockerhub
KubernetesInitial deployment manifestsInitial commit

Demonstration of the working MVP #

Demo video on google drive

Internal demo #

Notes from internal demo on 23 June 2025:

  • Attendees: Diana, Mikhail, Aleksei, Vladislav, Sofia

  • Feedback:

    • Core CRUD & Auth: stable
    • Runner: functional
    • Runner: in process
    • CI/CD: staticcheck errors need fixes
    • Frontend: basic UI ready
  • Action Items:

    1. Backend: Runner-Manager integration into API flow
    2. Frontend: implement Submit API wiring and Results page
    3. DevOps: complete Docker Hub pushes in CI/CD, initiate Kubernetes deployment

Weekly commitments #

Individual contribution of each participant #

Team MemberWeek #2 Contributions
Mikhail PanteleevUI refactoring, submission flow and runner diagrams, Runner implementation, starting Runner-manager prototype.
Vladislav MerkulovCRUD for submissions and contests, authentication and authorization middleware, gRPC client in API.
Aleksei FominykhRunner prototype, submission flow and runner diagrams, to start Kubernetes deployment.
Sofia KulaginaLint in frontend checks, staticcheks and gotest in backend checks, Docker Hub in CI/CD, runner research.
Diana YakupovaMeeting organization, update kanban-board, assist with blockers, to define sprint goals for the next weeks, research devops responsobilities, report.

Plan for Next Week #

In Week #4, we will integrate the Submit into the frontend and develop the Results page. On the backend, our goal is to finalize Runner‑Manager integration. We will also deploy the full stack in a staging environment via docker‑compose, enhance the CI/CD pipeline check new dev changes, deploy the Kubernetes.

Confirmation of the code’s operability #

We confirm that the code in the main branch:

  • [✔] In working condition.
  • [✔] Run via docker-compose.