Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Migrate project submission to the judging system #54

Open
anudaweerasinghe opened this issue Mar 16, 2024 · 0 comments
Open
Assignees

Comments

@anudaweerasinghe
Copy link
Member

anudaweerasinghe commented Mar 16, 2024

Why project submission on judging?

Decided to move project submission to the judging system to (a) have a project submission surface for external events, and (b) avoid syncing issues between tartanhacks backend and the judging system, i.e. facilitate #47

Project submission page

Upon login, participants will be redirected to the project submission page - this page will be restricted to participants only. First participants will provide project and team info on this page.

  • Project Info - name, description, githubUrl, otherResources
  • Team Info - name, teamMembers: email[]

Getting team info externally

Team info will be obtained automatically via API call if an admin specifies settings.getTeamUrl - in this case, we will ping this endpoint to get the team name, and team members emails given a given user's email. User documents will be generated for team members that haven't logged in yet. Fetched team info will be autofilled in the form, and participants will still be able to edit.

If settings.getTeamUrl is not specified, then participants will need to enter the teamInfo manually. We will create User documents for emails that don't exist in the User collection if and only if setting.AuthMode == SYNC. In the local auth case only users in the User collection can be added as team mates, since we assume that the User collection is an accurate whitelist of participants. This is not the case when settings.AuthMode == SYNC because users are added to the collection lazily upon log in, so a participant that hasn't logged into the judging system yet won't be on the User collection.

Prize submissions/withdrawal

Upon submitting project info, their project will be auto submitted for prizes with autoSubmit = true. They'll also be able to enter/withdraw to/from all other prizes.

Editing project submission within a team

Once submitted, if another user within the team logs in they'll see the submitted project info and be able to edit it directly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants