# Mentors Showcase This document will serve as a collaborating point for the development of the [OC Mentors Showcase feature](https://github.com/OperationCode/operationcode/issues/774). ## Overview This project will involve two general features: - A mentors showcase page - A UI for mentors to provide their background information ### Mentors Showcase Page This page will showcase the Operation Code mentors. After some discussion, we'd like to emulate the interface that Bloc.io uses [here](https://bloc.io/mentors). It could contain: - A photograph of the mentor > [name=hollomancer]We should ensure we specify standards for image type and resolution - Areas the mentor "mentors" people in > [name=hollomancer]This entails some backend work to link mentors to users, which is probably good anyway (we need to track the skills people have vs. the skills people are working on) - Cross-links to squads and other OC pieces they are involved with > [name=hollomancer]Will need to define scope of this > [name=kylemh]I thought we gave up on squads? - Where they live (or their state), in case a face-to-face is ever an option (as well as relative time zones) - Some of the mentors history and experience, so they are more relatable (keep this?) - Links to their GitHub, Linkedin, personal site/portfolio, Twitter - What else? ### Mentor Background Form This would be a form where a mentor can enter in their own information. Access to this form should be protected behind tiered permissions. ## Frontend User Stories ### Mentors Showcase - _As a user, I would like to be able to see what mentors Operation Code offers, so that I understand the value the organization can deliver to my learning experience._ - _As a user, I would like to be able to see the skills, level of experience, and current workplace to judge a mentors ability to mentor me_ - _As a user, I would like the ability to click on a link or link(s) to get a closer look at a specific mentor, so that I can learn more about them if I become interested in them. Example: Links to their GitHub or LinkedIn._ - _As a user, I would like to be see a mentor's Slack username so that I can easily find them on the Operation Code Slack team._ ### Mentor Form - To be filled in > [name=kylemh]Is this for the potential mentor to fill out? If it's for the Mentee, this should be called "Mentorship Request Form" or "Mentee Form". ## Backend User Stories ### Mentors Showcase - Associating a picture with a user, including storage and caching - Endpoint for retrieving an `index` of mentors, their mentor data, and their picture, including API documentation ### Mentor Form - CRUD API endpoints and documentation - An authorization system (likely using [Pundit](https://github.com/elabs/pundit)) for an MVP of tiered permissions, beginning with a mentor level permission > [name=hollomancer]Any more stuff we gotta add to the user object? - A `rake` task for granting the authorization to a list of `User` ids > [name=hollomancer]We should ensure we specify standards for image type and resolution