Your Gateway to Becoming a Better Software Engineer
About • Features • Tech Stack • Getting Started • Project Structure • Contributing • Community • License
The Dev Weekends Web Platform powers the public website and internal portals for the Dev Weekends community – a thriving tech community focused on mentorship in software engineering, DevOps, cloud computing, and machine learning/AI.
This platform serves:
- Public visitors – Explore sessions, mentors, resources, and community events
- Mentors – Manage mentees, track progress, and share resources
- Ambassadors – Coordinate community activities and outreach
- Admins – Oversee the entire platform, manage users, sessions, and content
- 🎓 Mentorship Program – Connect mentors with mentees for personalized guidance
- 📅 Session Management – Schedule and manage community learning sessions
- 👥 Community Portal – Showcase mentors, ambassadors, and community members
- 📚 Resource Library – Curated learning resources for the community
- 🎯 MindMaster – Interactive challenges and learning activities
- 🔐 Role-Based Access – Secure portals for Admin, Mentor, and Ambassador roles
- 📊 Activity Tracking – Monitor community engagement and progress
- 🌙 Dark/Light Mode – Beautiful UI with theme support
| Category | Technology |
|---|---|
| Framework | Next.js 15 (App Router) |
| Language | TypeScript |
| Styling | Tailwind CSS |
| UI Components | Radix UI |
| Database | MongoDB via Mongoose |
| Authentication | Custom JWT-based auth |
| Media Storage | Cloudinary |
| Analytics | Google Analytics |
- Node.js 20+ (LTS recommended)
- npm (or yarn/pnpm/bun)
- MongoDB instance (local or MongoDB Atlas)
- Git
-
Fork the repository (for contributors)
Click the "Fork" button at the top right of this page.
-
Clone the repository
git clone https://github.com/YOUR_USERNAME/web-platform.git cd web-platform -
Install dependencies
npm install
-
Configure environment variables
cp .env.example .env.local
Edit
.env.localand fill in your values. See Environment Variables for details. -
Start the development server
npm run dev
-
Open your browser
Navigate to http://localhost:3000
Create a .env.local file based on .env.example:
| Variable | Required | Description |
|---|---|---|
MONGODB_URI |
✅ | MongoDB connection string |
JWT_SECRET |
✅ | Secret key for JWT token signing |
ADMIN_ACCESS_CODE |
✅ | Access code for admin authentication |
MENTOR_ACCESS_CODE |
✅ | Access code for mentor authentication |
AMBASSADOR_ACCESS_CODE |
✅ | Access code for ambassador authentication |
NEXT_PUBLIC_GA_ID |
❌ | Google Analytics measurement ID |
CLOUDINARY_CLOUD_NAME |
❌ | Cloudinary cloud name for media uploads |
CLOUDINARY_API_KEY |
❌ | Cloudinary API key |
CLOUDINARY_API_SECRET |
❌ | Cloudinary API secret |
⚠️ Security Note: Never commit your.env.localfile or expose secrets in your code.
| Script | Description |
|---|---|
npm run dev |
Start development server with Turbopack |
npm run build |
Build for production |
npm start |
Start production server |
npm run lint |
Run ESLint |
web-platform/
├── app/ # Next.js App Router
│ ├── (public pages)/ # Public pages (home, about, sessions, etc.)
│ ├── admin/ # Admin dashboard & management
│ ├── ambassador/ # Ambassador portal
│ ├── mentor/ # Mentor portal
│ ├── api/ # API routes
│ ├── layout.tsx # Root layout
│ └── globals.css # Global styles
├── components/ # React components
│ ├── ui/ # Primitive UI components (Radix-based)
│ └── *.tsx # Feature components
├── lib/ # Shared utilities
│ ├── db.ts # MongoDB connection
│ ├── auth.ts # Authentication helpers
│ ├── jwt.ts # JWT utilities
│ └── utils.ts # General utilities
├── models/ # Mongoose models
├── public/ # Static assets
└── types/ # TypeScript type definitions
We love contributions! Dev Weekends is built by the community, for the community.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes
- Run linting:
npm run lint - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
- 📖 Contributing Guide – Detailed contribution guidelines
- 🐛 Bug Report – Report a bug
- 💡 Feature Request – Suggest a feature
- 📜 Code of Conduct – Community guidelines
- 🔒 Security Policy – Report security vulnerabilities
Looking for a place to start? Check out issues labeled good first issue – they're perfect for newcomers!
Join our vibrant community of developers, mentors, and tech enthusiasts!
- 🌐 Website: devweekends.com
- 🔗 Linktree: linktr.ee/DevWeekends
- 📺 YouTube: Dev Weekends
- 💼 LinkedIn: Dev Weekends
- 🐦 Twitter: @devweekends
A huge thank you to:
- All our amazing mentors who volunteer their time
- Our dedicated ambassadors who spread the word
- Every community member who participates and contributes
- All open source contributors who help improve this platform
This project is licensed under the MIT License – see the LICENSE file for details.
Made with ❤️ by the Dev Weekends community
