Skip to content

CLI tool to batch-create Meetup.com events from JSON specifications with recurrence patterns, venue aliases, and draft mode support.

License

Notifications You must be signed in to change notification settings

things-nyc/meetup-scheduler

Repository files navigation

meetup-scheduler

Tests License: MIT

If you organize a Meetup group with recurring events—monthly meetings, weekly workshops, quarterly socials—you know the pain of manually creating dozens of similar events. Each one requires clicking through the same forms, copying descriptions, selecting venues, and hoping you didn't fat-finger a date. Multiply that by several event series across multiple groups, and you've lost hours to repetitive busywork.

meetup-scheduler automates this. Define your events in a JSON file, use patterns like "first Thursday" or "third Saturday" to generate dates, and batch-create them as drafts for review before publishing. What used to take an afternoon now takes minutes.

Who Is This For?

  • Community organizers running recurring meetups (user groups, hobby clubs, networking events)
  • Meetup Pro subscribers managing multiple groups with similar event structures
  • Anyone tired of the Meetup web UI for scheduling more than a handful of events

You'll need organizer permissions on your Meetup group(s) to create events.

Features

  • Create multiple Meetup events from a single JSON file
  • JSON Schema validation for event definitions
  • Recurrence pattern support (e.g., "first Thursday of each month")
  • Venue aliases for quick reference
  • Draft mode for review before publishing
  • Markdown summary generation

Installation

uv tool install meetup-scheduler

Or install from source:

git clone https://github.com/things-nyc/meetup-scheduler.git
cd meetup-scheduler
uv tool install -e .

If you prefer not to install globally, you can run commands from the source directory using uv run meetup-scheduler instead.

Authentication

Before using meetup-scheduler, you need to authenticate with your Meetup account:

meetup-scheduler login

This opens your browser to log in to Meetup and grant access. Your credentials are stored securely and refreshed automatically.

To remove stored credentials:

meetup-scheduler logout

Quick Start

# Initialize your project directory
meetup-scheduler init .

# Log in to your Meetup account
meetup-scheduler login

# Sync groups and venues from Meetup
meetup-scheduler sync

# Create events from a JSON file (dry-run first)
meetup-scheduler schedule events.json --dry-run

# Create events as drafts
meetup-scheduler schedule events.json

You can also initialize a new directory in one step from anywhere:

meetup-scheduler init ~/my-meetup-project
cd ~/my-meetup-project

Commands

Command Description
login Authenticate with Meetup (opens browser)
logout Remove stored Meetup credentials
init [PATH] Initialize project directory with skeleton files
config Get or set configuration values
sync Fetch group/venue data from Meetup API
schedule Create events from JSON file
generate Generate event JSON from recurrence pattern
readme Display this README (use --raw for markdown source)

Global Options

Option Description
-v, --verbose Increase verbosity (can repeat: -vv)
-q, --quiet Suppress non-error output
--debug Enable debug mode (show stack traces)
--config PATH Override config file location
--dry-run Show what would happen without making changes

Boolean options can be explicitly negated with --no- prefix (e.g., --no-debug, --no-dry-run). This is useful for overriding defaults or config file settings.

Configuration

Configuration is stored in platform-specific locations:

  • Linux: ~/.config/meetup-scheduler/
  • macOS: ~/Library/Application Support/meetup-scheduler/
  • Windows: %APPDATA%\meetup-scheduler\

Project-specific settings go in meetup-scheduler-local.json in your project directory.

License

MIT License. See LICENSE.md for details.

Meta

Contributors

Support

This project is maintained by The Things Network New York.

If you find this helpful, please support The Things Network New York by joining, participating, or donating.

About

CLI tool to batch-create Meetup.com events from JSON specifications with recurrence patterns, venue aliases, and draft mode support.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages