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-platformInstall 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
