1
1
<img alt =" gitleaks badge " src =" https://img.shields.io/badge/protected%20by-gitleaks-blue " >
2
2
3
3
# meetup_bot
4
+
4
5
** Table of Contents**
5
6
* [ meetup\_ bot] ( #meetup_bot )
6
7
* [ Summary] ( #summary )
18
19
* [ Further Reading] ( #further-reading )
19
20
20
21
## Summary
22
+
21
23
Use Meetup Pro API to send Slack messages before events occur.
22
24
23
25
## Minimum Requirements
26
+
24
27
* [ Python 3.11+] ( https://www.python.org/downloads/ )
25
28
* [ Heroku CLI] ( https://devcenter.heroku.com/articles/heroku-cli )
26
29
* [ Create a Meetup API key] ( https://secure.meetup.com/meetup_api/key/ )
@@ -29,14 +32,17 @@ Use Meetup Pro API to send Slack messages before events occur.
29
32
* [ Create a Slack bot] ( https://api.slack.com/bot-users )
30
33
31
34
## Recommended Requirements
35
+
32
36
* [ Devbox] ( https://www.jetpack.io/devbox/docs/quickstart/ )
33
37
* [ Docker] ( https://www.docker.com/products/docker-desktop )
34
38
35
39
## Quickstart
40
+
36
41
* Clone repo
37
42
* Copy ` .env.example ` to ` .env ` and fill out environment variables
38
43
39
44
### Python only
45
+
40
46
``` bash
41
47
cd ./app
42
48
@@ -48,6 +54,7 @@ python main.py
48
54
```
49
55
50
56
### Shell wrapper
57
+
51
58
``` bash
52
59
cd ./app
53
60
@@ -62,6 +69,7 @@ cd ./app
62
69
```
63
70
64
71
### Devbox
72
+
65
73
I.e., [ Nix Package Manager] ( https://search.nixos.org/packages )
66
74
``` bash
67
75
# enter dev environment
@@ -81,6 +89,7 @@ devbox run test
81
89
```
82
90
83
91
### Docker
92
+
84
93
``` bash
85
94
cd ./app
86
95
@@ -92,14 +101,15 @@ docker run --name meetup_bot -it --rm --env-file .env -p 3000:3000 meetup_bot ba
92
101
```
93
102
94
103
### Docker Compose
104
+
95
105
``` bash
96
106
cd ./app
97
107
98
108
# build image
99
- docker- compose build --remove-orphans
109
+ docker compose build --remove-orphans
100
110
101
111
# run image
102
- docker- compose up -d
112
+ docker compose up -d
103
113
104
114
# enter server container
105
115
docker exec -it meetup_bot-cont bash
@@ -108,13 +118,14 @@ docker exec -it meetup_bot-cont bash
108
118
exit
109
119
110
120
# stop image
111
- docker- compose stop
121
+ docker compose stop
112
122
113
123
# remove image
114
- docker- compose down --volumes
124
+ docker compose down --volumes
115
125
```
116
126
117
127
## TODO
128
+
118
129
* Refactor authentication
119
130
* passlib + bcrypt -> bcrypt (see: [ AttributeError: module 'bcrypt' has no attribute '__ about__ ' with new 4.1.1 version · Issue #684 · pyca/bcrypt] ( https://github.com/pyca/bcrypt/issues/684#issuecomment-1902590553 ) )
120
131
* Secured endpoints
@@ -137,6 +148,7 @@ docker-compose down --volumes
137
148
* Coralogix logging
138
149
139
150
## Stretch Goals
151
+
140
152
* Indicate online vs. in-person
141
153
* Time Frame
142
154
* 2 hours before
@@ -180,6 +192,7 @@ docker-compose down --volumes
180
192
<!-- ALL-CONTRIBUTORS-LIST:END -->
181
193
182
194
## Further Reading
195
+
183
196
[ API Doc Authentication | Meetup] ( https://www.meetup.com/api/authentication/#p04-jwt-flow-section )
184
197
185
198
[ How to Handle JWTs in Python] ( https://auth0.com/blog/how-to-handle-jwt-in-python/ )
0 commit comments