Skip to content

Releases: bounswe/bounswe2026group7

1.0.0

Choose a tag to compare

@burakogut5 burakogut5 released this 12 May 19:07
24fc06f

Release Notes - Final Milestone

Live App: mymentornet.org

Overview

This release marks the official 1.0.0 final version of MyMentorNet. It
consolidates the post-MVP development cycle across backend, web, and mobile
clients, and delivers the complete containerized product for the course
final release.

MyMentorNet pairs structured mentor / mentee programmes with a real-time
social feed and an administrative console, supported by three advanced
recommendation engines and a documented production deployment path.

Key Highlights

  • End-to-end mentorship lifecycle from request to rating, including shared
    goal definition, tasks, milestones, meetings, extension, and termination
  • Full social feed with image attachments, hashtags, comments, comment
    likes, reposts and quote-shares, bookmarks, edit history, soft-delete
    with restore, and follower-aware profile-visibility controls
  • Real-time engagement updates over STOMP/WebSocket, with an unread badge
    and a new-posts pill for the active feed
  • Three independently toggleable recommendation engines for follow
    suggestions, mentor matching, and the For-You feed
  • Polymorphic reporting and admin moderation tools for posts, mentors,
    and mentorships
  • ESCO and ISCED-F taxonomy autocomplete plus hybrid location entry on
    profiles, with explicit profile-visibility and notification preference
    controls
  • Schema.org and Activity Streams 2.0 representations of feed resources
  • Operator-ready deployment with a documented runbook, a custom Neo4j +
    Graph Data Science image, and an expanded acceptance-test suite

Core Product Features

Mentorship Lifecycle

  • Mentorship request, accept, terminate, auto-end, and cancellation flows
    with a preserved timeline and explicit cleanup endpoint
  • Shared goal definition with gating on dependent screens
  • Tasks, milestones, and a chronological progress timeline rendered on
    both clients
  • Mentor capacity setting on the profile with overload warnings
  • Mentee-side rating prompt after a mentorship ends, with running average
    on the mentor's profile
  • Mentor-initiated extension flow with a 1 / 3 / 6 month picker
  • My Mentorships page on the web with active and past tabs, paginated
    history

Meetings and Availability

  • Create, reschedule, and cancel meetings between matched mentor and mentee
  • Weekly calendar view with availability blocks and meeting overlays
  • Real upcoming-meeting hydration on the home page

Social Feed

  • Posts with up to four image attachments, strict magic-byte validation,
    and a dedicated feed-media download endpoint that does not leak
    chat-only uploads
  • Hashtags, threaded comments, comment likes, reposts, quote-shares with
    attribution rendering, and bookmarks
  • Search filters for date range, language, hashtag, and author, plus
    viewer-side keyword mute
  • Trending-hashtags rail and live engagement counters
  • Edit history viewer, soft-delete with restore-via-undo toast
  • Server-side, follower-aware enforcement of mentee profile visibility on
    every feed read path
  • Activity Streams 2.0 and Schema.org JSON-LD coverage of feed objects
    for downstream consumers
  • Engagement notifications for likes, comments, shares, and follows

Recommendation Engines

  • Multi-signal follow ranker combining Personalized PageRank, second-hop
    reach, recent engagement, direct interaction, cold-start popularity,
    interest overlap, and an optional semantic-affinity signal, computed
    over a Neo4j 5 follow graph kept in sync with PostgreSQL via
    after-commit listeners
  • Advanced mentor matcher with weighted profile signals, paired with an
    LLM-authored explanation that is required to reference the candidate's
    profile before being returned to the client
  • For-You feed pipeline with candidate generation, scoring, MMR
    re-ranking, configurable diversity floor, and contextual bandit
    exposure hooks
  • Each ranker is independently toggleable and gracefully degrades to its
    legacy counterpart when external dependencies are absent

Profile and Identity

  • ESCO, ISCED-F, and Wikidata taxonomy autocomplete on the profile editor
  • Hybrid location entry storing both free-text city and explicit
    latitude / longitude
  • Mentee affiliation across DTO, entity, and UI
  • Profile-visibility toggle with surname and photo masking
  • Notification preferences toggles
  • Optional follow / unfollow with isFollowing surfacing on profile reads
  • User-authored posts section on profile pages

Administration and Moderation

  • Admin user list and lookup endpoints with an admin self-view fix
  • Ban / unban controls and ban-aware login handling on web and mobile
  • Polymorphic report queue covering posts, mentors, and mentorships, with
    an admin moderation console
  • Admin-to-user direct messaging composer and inbox with a From-admin
    badge
  • Mentor and mentee dashboard statistics endpoints

Authentication and Security

  • Layered spam-bot defences on registration: signed form-token plus a
    hidden honeypot field
  • Tightened authorisation header handling across web and mobile
  • Server-side enforcement of profile-visibility privacy on every feed
    read path
  • Banned-user login flow with a clear client-side message

Web Improvements

  • Mentee mentor-rating prompt with average display on profiles
  • Mentor extend-mentorship modal with 1 / 3 / 6 month options
  • Feed search filters, viewer keyword mute, repost and quote-share
    rendering, comment likes, and trending hashtags rail
  • Live STOMP feed subscription with unread badge and new-posts pill
  • Profile-editor improvements including hybrid location, ESCO / ISCED-F
    autocomplete, mentee affiliation, mentor capacity, and notification
    preferences
  • Admin console with user moderation, broadcast composer, inbox, and
    report queue
  • Multiple responsive-behavior and form-validation fixes

Mobile Improvements

  • Feed tab with image-bearing posts, likes, comments, blog posts, and
    trending hashtags
  • Mentorship actions, admin panel, custom modals, and auto-redirects
  • Mentorship progress timeline and meeting notes
  • Auth-session fix and integration with Feed, meetings, and milestone APIs
  • Banned-user login handling
  • Screen tests for messages, profile, and feed

Backend Improvements

  • Spring Boot 3.5 / Java 21 / Maven baseline maintained through V52 of
    the Flyway chain
  • Spring Data Neo4j integration with a dual transaction manager gated by
    configuration, mirroring follow relationships from PostgreSQL via
    after-commit JPA listeners
  • Advanced mentor and follow rankers wired behind dedicated feature flags
  • For-You feed pipeline with pluggable signal API
  • Soft-delete lifecycle, edit history, and trending support on feed posts
  • Comment-likes endpoints, viewerHasLiked / viewerHasBookmarked
    projections, and accurate engagement counts in list responses
  • Polymorphic reporting service backed by a single audit-ready schema
  • Admin moderation, messaging, and ban / unban services
  • Mentorship rating-read endpoints (single mentorship and paginated
    mentor list)
  • Cross-feature E2E workflow test suite and stability rewrites for the
    flakier acceptance scenarios

Infrastructure and DevOps

  • Operator-facing backend deployment guide covering local Docker, bare
    JVM, droplet deployment, Flyway, backup, Neo4j, and a runbook
  • Custom Neo4j 5 + Graph Data Science 2.13.4 Docker image to avoid the
    runtime plugin-download race observed on CI runners
  • Production-grade Docker Compose stack with health-checked dependencies
    between PostgreSQL, Neo4j, and the backend
  • Resend integration for outbound verification and password-reset emails,
    with a no-op fallback for local development
  • Comprehensive .env.example documenting every configurable knob
  • Expanded acceptance test suite (AT-02, AT-04, AT-05, AT-07, AT-17
    through AT-22) under Playwright with stability rewrites for the
    slower-runner flakes
  • Mock data seed scripts for a pre-populated demo environment

Quality, Standards, and Testing

  • Significant unit-test coverage growth across backend (JUnit + Mockito),
    web (Vitest), and mobile (Jest)
  • Cross-feature backend E2E workflow tests covering the mentorship and
    feed surfaces
  • Mobile screen tests for messages, profile, and feed
  • Documentation updates across the wiki for acceptance scenarios,
    architecture notes, and standards coverage

Included Work

This final release includes all merged work between:

  • v1.0.0-mvp
  • final-milestone

Full changelog:
v1.0.0-mvp...final-milestone

Contributors

Developed and maintained by the BounSWE 2026 Group 7 team
(Boğaziçi University CMPE 354).

MVP Release v1.0.0

Choose a tag to compare

@burakogut5 burakogut5 released this 07 Apr 19:05
dc8fe92
Merge pull request #232 from bounswe/dev

Merge dev into main

0.1.0-alpha

0.1.0-alpha Pre-release
Pre-release

Choose a tag to compare

@muhammetsami muhammetsami released this 07 Apr 19:08
dc8fe92

MVP Release v1.0.0 — MentorNet (Pre-Release)

  • Release Date: April 7, 2026
  • Milestone: MVP Milestone
  • Status: Pre-Release (0.1.0-alpha)

📌 Overview

This pre-release marks the MVP Milestone for the MentorNet project. MentorNet is a mentor-mentee matching and mentorship management platform. This release delivers a fully integrated end-to-end system across the frontend (React Web), mobile (React Native), and backend (Spring Boot), supported by a robust DevOps infrastructure.

Live Demo

•⁠ ⁠Web App: https://mymentornet.org/
•⁠ ⁠API: http://167.71.44.71:8080/api
•⁠ ⁠API Docs (Swagger): http://167.71.44.71:8080/swagger-ui/index.html


🚀 Features & Requirements Covered

1. Authentication, Security & Identity

  • Core Auth: Secure user registration with real name, email, and password, alongside form validation (Req: 1.2.3.1).
  • Login & Roles: Login system with credential verification, JWT-based authentication, and role-based access (Mentor / Mentee) (Req: 1.2.3.5, 1.2.3.6, 1.1.1).
  • Email Verification: Email verification on registration via Resend API (Req: 1.2.3.4).
  • Session Management: Persistent auth state on page refresh, forgot password/reset flow, and profile dropdown logout (Req: 1.2.3.8).

2. Profile & Availability Management

  • Profile Setup: Comprehensive profile creation, viewing, and editing capabilities for both Mentees and Mentors, including background, goals, skills, and interests (Req: 1.1.1.1.1, 1.1.1.2.1, 1.2.2.1).
  • File Uploads: Profile photo upload with file storage.
  • Availability Setup: Mentor and Mentee availability management with CRUD operations and calendar UI integration (Req: 1.1.1.2.3, 1.1.4.1).
  • Preferences: Mentor preference dashboard for managing preferred mentee criteria (Req: 1.1.1.2.2, 1.2.2.2).

3. Discovery & Matching Logic

  • Smart Matching: Matching algorithm featuring a scoring system, including availability overlap scoring (Req: 1.1.2.1).
  • Discovery Interfaces: Mentor listing for mentees and mentee candidate listing for mentors (Req: 1.1.1.1.10, 1.1.1.2.4, 1.1.2.2).
  • Pagination: Paginated user list and matching endpoints (?page=0&size=20) alongside backward-compatible unpaginated /all endpoints.
  • Privacy Controls: Strict privacy enforced during the matching stage (mentee's surname and profile photo are hidden) (Req: 1.1.2.6).

4. Mentorship Workflow & Notifications

  • Requests: Mentees can send mentorship requests; mentors can accept or reject them (Req: 1.1.1.1.4, 1.1.1.2.6).
  • Active Management: Mentors can manage multiple mentees simultaneously via the Active Mentorships dashboard and set shared goals (Req: 1.1.1.2.11, 1.1.5.6).
  • State Tracking: Mentorship relationship state management (PENDING, ACTIVE, REJECTED).
  • Notifications: In-app notification infrastructure (Read/Read-all actions) and mentor notifications for new requests (Req: 1.2.1.1).

5. Client Interfaces (Web & Mobile)

  • Web (React/Vite): Complete UI implementation including Authentication pages, Home page (with matched mentors), Explore page, Profile management, and Notifications UI.
  • Mobile (React Native): Core MVP features implemented with UI/UX aligned with the web design (Figma-based) (Req: 2.1.2).

🛠 Tech Stack & DevOps

Layer Technology
Backend Spring Boot, Java, PostgreSQL
Web Frontend React, Vite
Mobile React Native
Email Resend API
Auth JWT
Containerization Docker, Docker Compose
CI/CD GitHub Actions
Documentation Swagger/OpenAPI

Infrastructure Achievements

  • Docker Compose dev stack (PostgreSQL, MailHog, healthchecks).
  • Production deployment setup (Droplet, domain, CI/CD).
  • Auto-deploy to production on push to main branch via GitHub Actions.
  • SLF4J + Logback logging with request tracing.