-
Copy
env.sample
to.env
-
Update the contents appropriately.
-
Start the Postgres and Redis datastore on Docker
docker-compose -f docker-compose-dev.yml up -d
-
Prepare the databases
NODE_ENV=development npm run db:create NODE_ENV=development npm run db:migrate NODE_ENV=test npm run db:create NODE_ENV=test npm run db:migrate
To pull data from Meetup, you first need to register as a Meetup API consumer. You can read the full documentation here but here is the setup process:
-
Visit https://secure.meetup.com/meetup_api/oauth_consumers/ and (if you don't already have a consumer) hit [Create New Consumer]
Be sure to set the redirect_url to
http://localhost:3001/oauth
-
Wait for an approval email from meetup.com (may take a day or two)
-
Revisit https://secure.meetup.com/meetup_api/oauth_consumers/ and copy the Key and Secret into
.env
asMEETUP_OAUTH_KEY
andMEETUP_OAUTH_SECRET
-
Start the app with:
npm run dev
-
After allowing authorization, copy the displayed
refresh_token
string into.env
asMEETUP_REFRESH_TOKEN
Now you should be able to run the full process:
npm run harvest:groups | tee harvest_groups.out
npm run harvest:events | tee harvest_events.out
npm run harvest:events:worker | tee harvest_events_worker.out
If there are groups appearing in the events list which you think do not belong, you can add them to the blacklist at src/config/blacklist.js
You may like to attach a comment, so that other devs understand why you removed that group, and can check in future whether the decision should still apply.
Then please open up a pull request with your added filters. Thanks!