A modern refactor of the original Meetup Batch Event Set Tool, now with TypeScript and modern React patterns.
MBEST-v2 is a Chrome extension that enhances Meetup.com functionality by allowing users to:
- Schedule multiple Meetup events to Google Calendar in one action
- Select events within a specified date range
- Search and filter Meetup groups
- Manage event scheduling through an intuitive interface
-
Frontend:
- React 18 with functional components and hooks
- TypeScript for type safety
- Material-UI v6 for component library
- Redux Toolkit for state management
- React Calendar for date selection
-
Build Tools:
- Vite for fast development and building
- CRXJS for Chrome extension development
- ESLint for code quality
-
APIs:
- Meetup API for group and event data
- Google Calendar API for event scheduling
- Chrome Extension APIs for:
- Identity management
- Storage
- Background scripts
- Clone the repository:
git clone https://github.com/Sshetty2/mbest-v2.git
cd mbest-v2
- Install dependencies:
npm install
- Create a
.env
file in the root directory:
VITE_MEETUP_CLIENT_ID=your_meetup_client_id
VITE_MEETUP_CLIENT_SECRET=your_meetup_client_secret
VITE_REDIRECT_URI=your_redirect_uri
- Update
manifest.json
with your Google OAuth client ID:
"oauth2": {
"client_id": "your_google_client_id"
}
- Start development server:
npm run dev
- Load the extension in Chrome:
- Navigate to
chrome://extensions/
- Enable "Developer mode"
- Click "Load unpacked"
- Select the
dist
directory
- Navigate to
- 🔍 Group search with autocomplete
- 📅 Date range selection
- ✅ Batch event selection
- 📲 Google Calendar integration
- 🔒 Secure OAuth authentication
- 💾 Local storage for preferences
- 🎨 Modern, responsive UI
- Redux Store: Manages application state for groups, events, and dates
- Background Script: Handles OAuth flows and API communications
- Content Script: Integrates with Meetup.com pages
- Popup: Main user interface for interaction
This extension prioritizes user privacy:
- No personal data storage
- Temporary token storage only
- Secure API communications
- See Privacy Policy for details
Contributions are welcome! Please read our contributing guidelines and submit pull requests to the repository.
MIT License - see LICENSE file for details