Welcome to MentorHub - your guided journey to becoming a full-stack developer! This project is designed to help you learn by building a real-world social media application called "WeAll".
Live Demo (Coming soon)
- User Authentication: Secure signup, login, and password reset
- Social Feed: Create, like, and comment on posts
- User Profiles: Customizable profiles with avatars
- Real-time Updates: Live notifications and messaging
- Responsive Design: Works on desktop and mobile devices
- Frontend Development: Build responsive web interfaces with React and TypeScript
- Backend Development: Master different database technologies (PostgreSQL, MongoDB, Supabase)
- Mobile Development: Create cross-platform mobile apps with React Native
- Authentication & Security: Implement secure user authentication and authorization
- Real-time Features: Build interactive features like posts, comments, and notifications
- React 18 with TypeScript
- Vite for fast development
- Custom CSS (No UI frameworks)
- React Native with Expo
- TypeScript
- Custom styling
- Express + PostgreSQL (with Prisma)
- Express + MongoDB (with Mongoose)
- Supabase (Backend as a Service)
We'll build the WeAll app step by step through these modules:
-
Project Setup & Environment
- Getting Started
- Development Environment Setup
- Version Control with Git
-
Frontend Development
- React Fundamentals
- State Management
- API Integration
- Styling with CSS
-
Backend Development
- Choose your backend stack
- Database Design
- API Development
- Authentication
-
Mobile Development
- React Native Basics
- Navigation
- Device Features
-
Deployment
- Web Deployment
- Mobile App Publishing
- CI/CD Pipeline
Make sure you have the following installed on your system:
- Node.js (v18 or later)
- Git
- npm (comes with Node.js) or Yarn
- VS Code (recommended) or your preferred code editor
-
Clone the repository and navigate to the project directory:
git clone https://github.com/yourusername/mentorhub.git cd mentorhub -
Install the project dependencies:
# Install root dependencies npm install
Choose one of the following backends to work with:
cd backend-postgres
npm install
cp .env.example .env # Update with your database credentials
npx prisma migrate dev --name initcd backend-mongo
npm install
cp .env.example .env # Update with your MongoDB URIcd backend-supabase
npm install
cp .env.example .env # Update with your Supabase credentialscd frontend
npm install
cp .env.example .env # Update with your API endpoints-
Start the backend (from the backend directory):
npm run dev
-
In a new terminal, start the frontend:
cd frontend npm run dev -
Open http://localhost:5173 in your browser
- Getting Started
- Frontend Development
- Backend Development
- Mobile Development
- API Reference (Coming soon)
- Deployment Guide (Coming soon)
We welcome contributions from everyone! Here's how you can help:
- Report bugs: File an issue describing the bug
- Suggest features: Propose new features or improvements
- Contribute code: Submit a pull request
Please read our Contributing Guidelines and Code of Conduct before getting started.
- React - Frontend library
- TypeScript - Type-safe JavaScript
- Express - Backend framework
- PostgreSQL / MongoDB / Supabase - Database options
- React Native - Mobile app development
- Vite - Frontend build tool
This project is licensed under the MIT License - see the LICENSE file for details.
- React Documentation
- TypeScript Documentation
- Express Documentation
- Prisma Documentation
- MongoDB Documentation
- Supabase Documentation
Have questions or feedback? Open an issue or reach out to us at your-email@example.com