Skip to content

amfoss/amMentor-Web

Repository files navigation

amMentor Logo

A gamified mentorship platform built with NextJs

Web App Django Mobile App Backend Docs Contributions Welcome

Overview

amMentorbeing developed separately for web and mobile using dedicated tech stacks for each, designed to transform traditional mentorship into an engaging, gamified experience. Web version built using NextJs, it empowers mentees to progress through curated learning tracks under the guidance of experienced mentors. The system emphasizes accountability, growth, and engagement with features like leaderboards, task management, and achievement recognition.

The application provides distinct interfaces for two primary user roles:

  • Mentors: Experienced guides who review tasks and support mentees
  • Mentees: Learners who complete tasks across various tracks to gain points and recognition
Screenshot 2025-05-04 at 2 22 35 PM

Technical Foundation

amMentor-Web is built on a modern web technology stack, utilizing Next.js 15.3.0 as its framework foundation with React 19.0.0 for component-based UI development. The application is implemented in TypeScript for type safety and uses Tailwind CSS for styling.

Screenshot 2025-05-04 at 2 28 17 PM

Key Features

Feature Description
Role-Based Access Different interfaces for mentors and mentees with separate navigation flows
OTP Authentication Email-based one-time password verification for secure login
Track-Based Learning Domain-specific learning paths (e.g., AI, Web Dev) with track selection
Leaderboard System Competitive ranking based on points and achievements with animated display
Task Management Assignment, submission, and review of learning tasks
Profile Management User profiles with progress tracking and statistics

User Flow

The application implements a role-based user flow, starting from common authentication and diverging into role-specific experiences:

Screenshot 2025-05-04 at 2 29 13 PM

Application Structure

The application follows a structured routing pattern centered around two main sections:

Screenshot 2025-05-04 at 2 30 14 PM

Development and Extension

The amMentor platform uses NextJs and Flutter's cross-platform capabilities to target both Android and iOS environments, with consistent styling through a centralized theme configuration. The application architecture supports extension through:

  • Additional Tracks: New learning paths can be added to the track selection system
  • Enhanced Gamification: The leaderboard and point system can be expanded
  • New Task Types: The task management system can incorporate different types of assignments

Web & Backend Versions

This project also includes:

All platforms share the same backend for authentication, track management, leaderboard syncing, and progress tracking.

Contributing Guidelines

  1. Fork this repository

  2. Clone your fork locally:

    git clone https://github.com/your-username/amMentor-Web.git
    cd amMentor-Web
  3. Install dependencies:

    npm install
    # or
    yarn install
  4. Create a new branch:

    git checkout -b your-feature-name
  5. Start the deployment server :

    npm run dev
    # or
    yarn dev

What You Can Work On

  • UI enhancements (e.g., animations, responsiveness)
  • New features (e.g., badges, notifications)
  • Bug fixes
  • Test cases
  • Code refactoring and lint cleanup
  • Improving documentation (README, onboarding guide, etc.)

Coding Guidelines

  • Use Riverpod for state management

  • Follow Flutter/Dart best practices and format the code with:

    npm run lint
    npm run format
  • Keep UI and business logic seperated

  • Use meaningful commit messages :

    feat: add track selection UI
    fix: leaderboard animation glitch
    

Pull Request Process

  1. Push you changes to your fork :

    git push origin your-feature-name
  2. Open a Pull Request (PR) against the main branch.

  3. Provide a clear description of:

    • What your PR does
    • Related issue (if any)
    • Screenshots or screen recordings (if it’s UI related)

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages