meetfy
v1.0.1
Published
CLI tool for creating instant meetings and reserving time in Google Calendar
Downloads
7
Maintainers
Readme
Meetfy CLI
A command-line tool for creating instant meetings and reserving 30 minutes in Google Calendar.
Features
- 🚀 Create instant meetings with Google Meet
- 📅 Automatically reserve 30 minutes in your Google Calendar
- 👥 Add participants via email
- 🔐 Secure Google OAuth2 authentication
- 💾 Persistent authentication tokens
- 🎨 Beautiful CLI interface with colors and spinners
Installation
- Clone the repository:
git clone <repository-url>
cd meetfy- Install dependencies:
npm install- Build the project:
npm run build- Link globally (optional):
npm linkSetup
1. Google Calendar API Setup
- Go to Google Cloud Console
- Create a new project or select an existing one
- Enable the Google Calendar API:
- Go to "APIs & Services" → "Library"
- Search for "Google Calendar API"
- Click "Enable"
- Create OAuth 2.0 credentials:
- Go to "APIs & Services" → "Credentials"
- Click "Create Credentials" → "OAuth 2.0 Client IDs"
- Choose "Desktop application"
- Download the credentials file
- Rename the downloaded file to
credentials.jsonand place it in the project root
The credentials.json file should look like this:
{
"installed": {
"client_id": "your-client-id.apps.googleusercontent.com",
"project_id": "your-project-id",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_secret": "your-client-secret",
"redirect_uris": ["http://localhost"]
}
}2. Authentication
Run the authentication command:
npm run dev auth
# or if linked globally:
meetfy authFollow the authentication flow to authorize the application.
Usage
Create an Instant Meeting
Basic usage:
npm run dev create
# or if linked globally:
meetfy createWith options:
meetfy create -t "Team Standup" -d "Daily team sync" -p "[email protected],[email protected]"Available Options
-t, --title <title>: Meeting title-d, --description <description>: Meeting description-p, --participants <emails>: Comma-separated list of participant emails
Authentication
To authenticate or re-authenticate:
meetfy authDevelopment
Run in Development Mode
npm run devBuild for Production
npm run buildRun Built Version
npm startProject Structure
src/
├── features/
│ ├── auth/
│ │ └── authService.ts # Google OAuth2 authentication
│ └── meeting/
│ └── meetingService.ts # Meeting creation and calendar integration
├── utils/
│ └── cliUtils.ts # CLI utilities and formatting
└── index.ts # Main CLI entry pointFeatures
- Instant Meeting Creation: Creates meetings that start in 5 minutes
- 30-Minute Duration: Automatically sets 30-minute duration
- Google Meet Integration: Includes Google Meet link in calendar events
- Participant Management: Add participants via email addresses
- Calendar Reminders: Sets up email and popup reminders
- Persistent Authentication: Saves and reuses authentication tokens
- Interactive CLI: User-friendly prompts and colorful output
Requirements
- Node.js 18+
- Google Calendar API access
- Google OAuth2 credentials
License
ISC
