Skip to main content

Programs and submission flows

A program groups related events and decides how hackers submit their work. Choosing the submission flow on the program is what makes an event either project-first or challenge-first, so this is usually the first thing to set up. Open programs at https://core.mlhtools.com/resources/programs.

Program fields

  • Name: the program's name.
  • Slug: the program's URL-friendly identifier.
  • Project-first submission: the switch that selects the submission flow (see below).
  • Events: the events that belong to this program.
  • Series: the series this program is part of.

Project-first vs. challenge-first

The Project-first submission toggle on the program controls the flow:

  • Project-first (Devpost-style) — turn the toggle on. Hackers submit one project for the event, and the submission form is configured on the program. The program shows a Submission Form Setting panel where you set up the form.
  • Challenge-first — leave the toggle off. Hackers submit per challenge, and the submission form is configured on each challenge instead of the program.

This is why the submission form settings appear in different places depending on the event: on the program for project-first, and on the individual challenge for challenge-first. The fields themselves are the same in both places — see Submission form settings.

Steps (project-first)

  1. In Avo, open the Programs resource and select the program (or create one).
  2. Turn on Project-first submission.
  3. In the Submission Form Setting panel, configure the fields hackers will fill in.
  4. Save the program.

Steps (challenge-first)

  1. In Avo, open the Programs resource and confirm Project-first submission is off for the program.
  2. Configure the submission form on each challenge instead — see How to create a challenge.