Releases: bounswe/bounswe2026group7
Release list
1.0.0
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.exampledocumenting 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-mvpfinal-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).
- Amin Abu-Hilga — @LifelongWay
- Övgü Su Afşar — @ovguAfsar
- Muhammet Sami Çakmak — @muhammetsami
- Beratcan Doğan — @BERATCANS
- İbrahim Kayan — @ibrahimkayan
- Burak Öğüt — @burakogut5
- Mehmet Bora Sarıoğlu — @mehmetborasarioglu
MVP Release v1.0.0
Merge pull request #232 from bounswe/dev Merge dev into main
0.1.0-alpha
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/allendpoints. - 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 |
| 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.