freeCodeCamp / freeCodeCamp/classroom

Proposal: Add Mentor–Mentee matching improvements — Mentor/Mentee matching enhancements

Open
#565 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
JavaScript
Stars
155
Forks
138
PR merge metrics
No merged PRs in 30d

Description

### Describe the bug

## Summary
I want to propose the mentor–mentee matching feature improvement that I previously implemented. My earlier PR was closed because it did not have an associated Issue or discussion. I am now submitting it properly.

## Why this feature is useful
- When a student selects multiple subjects (example: DSA + DBMS), only one mentor gets assigned.
- This causes incorrect mentor assignments.
- Improved matching will assign one mentor per subject, reducing confusion and improving user experience.

## Proposed Implementation
- Update mentorship matching API to return one mentor per selected subject.
- Update mentee request API to accept subjects as a list/array.
- Add backend logic to select the highest-priority mentor per subject.
- Add tests for multi-subject matching.
- No breaking changes for single-subject requests.

## What I will do after approval
If maintainers approve, I will implement the updated logic on a feature branch and open a new PR that references this Issue.

## Additional Notes
My previous PR (which was closed):

### To Reproduce

This is not a bug, so there are no reproduction steps.

I am using the bug-report template to submit a **feature proposal** because the repository does not include a Feature Request template.

Reproduction steps do not apply here.

### Expected behavior

Expected behavior is the acceptance and discussion of the proposed feature:

- Students who select multiple subjects should get matched to one mentor per subject.
- The mentor–mentee matching logic should support multi-subject assignments.
- Maintainers can review this proposal and decide whether it fits project direction.

This field is required by the bug-report template, so I am using it to describe the intended outcome of the feature proposal.

### Screenshots

_No response_

### Desktop OS

_No response_

### Desktop Browser

_No response_

### Desktop Browser Version

_No response_

### Mobile Device

_No response_

### Mobile OS

_No response_

### Mobile Browser

_No response_

### Mobile Browser Version

_No response_

### Additional context

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.