Platform Features
The platform will be developed using Next.js, Tailwind, Ant Design, Node.js (Express), Prisma, and PostgreSQL/Supabase.
1️⃣ Registration System
📍 Objective: Allow users to register on the platform according to their type (Young Professional, Company, Mentor).
📌 Features:
✅ Registration via email/password and OAuth (Google, LinkedIn).
✅ Profile differentiation (Young Professional, Company, Mentor).
✅ Document upload to Supabase Storage.
✅ Email confirmation using Supabase Auth.
🔹 Stack Used:
- Frontend: Next.js + React Hook Form + Tailwind CSS + Ant Design.
- Backend: Express + Prisma (PostgreSQL on Supabase).
- Authentication: JWT + OAuth via Supabase Auth.
2️⃣ Login System
📍 Objective: Secure user access to the platform.
📌 Features:
✅ Login via email and password or Google/LinkedIn.
✅ Password recovery via Supabase Auth.
✅ JWT authentication in Express.
🔹 Stack Used:
- Next.js with NextAuth.js (for social login).
- Express + JWT (for API login).
3️⃣ Young Professional Profile
📍 Objective: Create a space for young professionals to personalize their professional profile.
📌 Features:
✅ Academic information and interest area registration.
✅ Resume upload to Supabase Storage.
✅ Automatic job matching.
🔹 Stack Used:
- Frontend: Next.js + Zustand (for global state management).
- Backend: Express + Prisma (PostgreSQL database).
- Job Recommendation: Simple backend algorithm (based on skills and interests).
4️⃣ Company Profile
📍 Objective: Create a space for companies to recruit talent.
📌 Features:
✅ Company registration with CNPJ validation via external API.
✅ Creation of recruiter profiles within the company.
✅ Job posting and candidate filtering.
✅ Internal chat via Supabase Realtime.
🔹 Stack Used:
- Frontend: Next.js + Ant Design (company interface).
- Backend: Express + Prisma (PostgreSQL).
- WebSockets: Supabase Realtime for communication.
5️⃣ Mentor Profile
📍 Objective: Create a space for experienced lawyers to offer mentorships.
📌 Features:
✅ Mentor registration with OAB license upload on Supabase.
✅ Scheduling of available time slots for mentorships.
✅ History of completed mentorships.
🔹 Stack Used:
- Calendar: Ant Design DatePicker.
- Backend: Express + Prisma.
- Database: PostgreSQL on Supabase.
6️⃣ Job Board - Young Professional
📍 Objective: Create a space where young professionals can find and apply for job opportunities.
📌 Features:
✅ Filters by law field, job type.
✅ Quick application and status tracking.
✅ Push notifications via Supabase.
🔹 Stack Used:
- Recommendation Algorithm: Prisma Query to find similar profiles.
- Notifications: Supabase Realtime + Firebase Cloud Messaging (for push notifications).
7️⃣ Candidate Profiles and Filters - Company
📍 Objective: Create a tool for companies to efficiently find candidates.
📌 Features:
✅ Advanced filters by course, area of expertise.
✅ List of recommended candidates.
✅ Option to save candidates for future contact.
🔹 Stack Used:
- Next.js + Ant Design Table for candidate display.
- Backend: Prisma Query for advanced filtering.
8️⃣ Job Posting - Company
📍 Objective: Develop a module for companies to post job openings easily and quickly.
📌 Features:
✅ Dynamic job creation form with Ant Design.
✅ Optional document uploads for job postings.
✅ Integration with LinkedIn Jobs API (future implementation).
🔹 Stack Used:
- Frontend: Next.js + Ant Design Form.
- Backend: Express + Prisma.
- Database: PostgreSQL on Supabase.
9️⃣ Mentorship Validation Area
📍 Objective: Create a system to register mentorships and allow feedback.
📌 Features (Young Professional):
✅ History of received mentorships.
✅ Mentor evaluation.
📌 Features (Mentor):
✅ Accept or decline mentorship requests.
✅ History of provided mentorships.
🔹 Stack Used:
- Calendar: Ant Design DatePicker.
- Backend: Prisma + PostgreSQL.
- Database: Supabase to store mentorship logs.