> For the complete documentation index, see [llms.txt](https://opencampus.gitbook.io/opencampus-machine-learning-program/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://opencampus.gitbook.io/opencampus-machine-learning-program/course-projects/requirements.md).

# How to Start, Complete, and Submit Your Project

In all Machine Learning courses you have:

* to complete a machine learning project in a team of up to 4 participants,
* attend at least all but 2 sessions of the course, and
* use the provided project template repository for your code and documentation (unless otherwise instructed).

The project is created, managed, and submitted directly in your course on [edu.opencampus.sh](https://edu.opencampus.sh) using the **Projects** section.

## 1. Set Up Your Repository

1. **Open the** [**Template Repository**](https://github.com/opencampus-sh/ml-project-template)
2. **Use this template**: Above the file list, click the "Use this template" button and choose "Create a new repository".
3. **Create your repository**: Name it and choose public or private, then click "Create repository from template".
4. **Clone it**: Run `git clone` on your new repository and start working.

You will share the link to this repository in EduHub when you submit (see step 4).

## 2. Create or Join a Project in EduHub

1. Log in at [edu.opencampus.sh](https://edu.opencampus.sh) and open your course.
2. Scroll to the **Projects** section.
3. Do one of the following:
   * **Propose your own project** – give it a title (a tagline and description are optional). You become the first team member.
   * **Request to join** an existing project that is still accepting participants.
   * **Use a template** project if your course provides one.
4. Teammates use **Request to join** on your project, and you accept them via **Manage requests**.

**Note**: You can be on only **one active project per course** at a time.

## 3. Get Your Team Confirmed

When your team is complete, use **Request review** to ask your instructor or mentor to confirm the team. They set the project type (**Presentation with link**) and attach the documentation instructions, after which the project moves to **In progress** and you can start uploading your deliverables.

Resolve all pending join requests first – the **Request review** button stays disabled while requests are still open.

## 4. Prepare Your Submission

In the **My Project** panel, provide the three required deliverables:

1. **Presentation**: Upload your slides (PDF, PPT/PPTX, or ODP, max. 25 MB).
2. **External link**: Paste the link to your project repository (the one you created in step 1). Make sure it is publicly reachable.
3. **Cover image**: Upload a representative image (at least \~800×450 px).

Written documentation is **optional** for this project type, but you can upload a file if you want to add extra notes. You can download the documentation instruction PDF from the **My Project** panel at any time, and you can replace any file up until you press **Submit**.

## 5. Submit Your Project

1. Make sure every required item in the submission checklist is complete.
2. **Only ONE team member** clicks **Submit project**.
3. In the confirmation dialog, select every author who actively contributed (you can exclude anyone who did not), then confirm.

Once submitted, the project is **locked** and reviewed by an instructor, who can approve it, reject it, or send it back to you for revisions. If it is sent back, editing is re-enabled and you can submit again.

**Deadline**: Make sure your project is submitted by the course deadline shown in the **My Project** panel. Certificates are issued for approved projects.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://opencampus.gitbook.io/opencampus-machine-learning-program/course-projects/requirements.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
