GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - pythoninthegrasses/meetup_bot: Use Meetup Pro API to send Slack messages before events occur.

BranchesTags
Open more actions menu

Latest commit

 

History

712 Commits
712 Commits

Folders and files

NameName
Last commit message
Last commit date
.agents/skills
.agents/skills
 
 
.claude
.claude
 
 
.devcontainer
.devcontainer
 
 
.dokploy-state
.dokploy-state
 
 
.github
.github
 
 
.serena
.serena
 
 
.vscode
.vscode
 
 
app
app
 
 
backlog
backlog
 
 
docs
docs
 
 
taskfiles
taskfiles
 
 
tests
tests
 
 
.all-contributorsrc
.all-contributorsrc
 
 
.dive-ci
.dive-ci
 
 
.dockerignore
.dockerignore
 
 
.editorconfig
.editorconfig
 
 
.env.example
.env.example
 
 
.gitignore
.gitignore
 
 
.markdownlint.jsonc
.markdownlint.jsonc
 
 
.mcp.json
.mcp.json
 
 
.pre-commit-config.yaml
.pre-commit-config.yaml
 
 
.release-please-manifest.json
.release-please-manifest.json
 
 
.roborev.toml
.roborev.toml
 
 
.tool-versions
.tool-versions
 
 
.yamllint
.yamllint
 
 
AGENTS.md
AGENTS.md
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
Dockerfile
Dockerfile
 
 
LICENSE
LICENSE
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
SECURITY.md
SECURITY.md
 
 
TODO.md
TODO.md
 
 
devbox.json
devbox.json
 
 
devbox.lock
devbox.lock
 
 
docker-compose.yml
docker-compose.yml
 
 
dokploy.yml
dokploy.yml
 
 
gitleaks.toml
gitleaks.toml
 
 
pyproject.toml
pyproject.toml
 
 
release-please-config.json
release-please-config.json
 
 
repomix-output.md
repomix-output.md
 
 
repomix.config.json5
repomix.config.json5
 
 
ruff.toml
ruff.toml
 
 
skills-lock.json
skills-lock.json
 
 
taskfile.yml
taskfile.yml
 
 
uv.lock
uv.lock
 
 

Repository files navigation

gitleaks badge

meetup_bot

Table of Contents

  • meetup_bot
    • Summary
    • Minimum Requirements
    • Recommended Requirements
    • Quickstart
      • Python only
      • Shell wrapper
      • Devbox
      • Docker
      • Docker Compose
    • Contributors
    • Further Reading

Summary

Use Meetup Pro API to send Slack messages before events occur.

Minimum Requirements

  • Python 3.11+
  • Create a Meetup API key
  • Slack
    • Create a Slack app
    • Create a Slack bot

Recommended Requirements

  • Devbox
  • Docker

Quickstart

  • Clone repo
  • Copy .env.example to .env and fill out environment variables

Python only

python -m venv .venv
source .venv/bin/activate

cd ./app

# run individual app
python <sign_jwt|meetup_query|slackbot|main>.py

# run only main app
python main.py

Shell wrapper

cd ./app

# standalone server w/hard-coded port (default: 3000)
./startup.sh

# standalone server w/port argument
./startup.sh 3000

# server used with scheduled job (e.g., cron job)
./scheduler.sh

Devbox

I.e., Nix Package Manager

# enter dev environment
devbox shell

# run individual app
python <sign_jwt|meetup_query|slackbot|main>.py

# exit dev environment
exit

# run standalone server
devbox run start

# run tests
devbox run test

Docker

cd ./app

# build image
docker build -f Dockerfile --progress=plain -t meetup_bot:latest .

# run image
docker run --name meetup_bot -it --rm --env-file .env -p 3000:3000 meetup_bot bash

Docker Compose

cd ./app

# build image
docker-compose build --remove-orphans

# run image
docker-compose up -d

# enter server container
docker exec -it meetup_bot-cont bash

# exit server container
exit

# stop image
docker-compose stop

# remove image
docker-compose down --volumes

Contributors

Alex Ayon
Alex Ayon

💻
Add your contributions

Further Reading

API Doc Authentication | Meetup

How to Handle JWTs in Python

Building a Basic Authorization Server using Authorization Code Flow (PKCE) | by Ratros Y. | Medium

OAuth2 with Password (and hashing), Bearer with JWT tokens - FastAPI

Python bcrypt - hashing passwords in Python with bcrypt

MushroomMaula/fastapi_login

FastAPI Auth + Login Page

checkbashisms

Building Docker images in Kubernetes | Snyk

Kaniko, How to Build Container Image with SSH | by Yossi Cohn | HiredScore Engineering | Medium

About

Use Meetup Pro API to send Slack messages before events occur.

Resources

Readme
Unlicense

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

2 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.