twitterdev / remote-dev-jobs-streamer

Match Tweets containing remote developer jobs using Filtered Stream and Tweet Annotations

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Remote Developer Jobs Streaming App

Version Documentation Twitter: tonyv00

Stream remote developer jobs in realtime using the Twitter API. This web app uses the Filtered Stream endpoints and Tweet Annotations in Twitter Developer Labs to listen for and display Tweets containing remote developer job postings.

Screenshot

Install

From the project root directory run the following

npm install
cd client/
npm install

Environment setup

Go into the details section of the appropriate app from your Twiter apps dashboard and under the "Keys and tokens" tab insert your consumer API keys below. Within your apps dashboard, remember to select the app you have set up with Twitter Developer Labs.

export TWITTER_CONSUMER_KEY=<YOUR API KEY HERE>
export TWITTER_CONSUMER_SECRET=<YOUR API SECRET KEY HERE>

Usage

From the project root directory run the following

yarn dev

After your app starts up, your default browser will automatically open and navigate to the rules management section of the app. Simply add the rule below to match Tweets containing remote developer job postings.

# Match Tweets containing the keywords "developer" or "engineer" and the keyword "remote", but only if they contain the context entity labels "Job search" or "Recruitment"

(developer OR engineer) remote (context:66.850073441055133696 OR context:66.961961812492148736)

Author

👤 Tony Vu

Support

Create a new issue on GitHub.

Contributing

We feel that a welcoming community is important and we ask that you follow Twitter's Open Source Code of Conduct in all interactions with the community.

License

Copyright 2020 Twitter, Inc.

Licensed under the Apache License, Version 2.0: https://www.apache.org/licenses/LICENSE-2.0

Production considerations

This app is for demonstration purposes only, and should not be used in production without further modifcations. Dependencies on databases, and other types of services are intentionally not within the scope of this sample app. Some considerations below:

  • The application can handle light usage, but you may experience API rate limit issues under heavier load. Consider storing data locally in a secure database, or caching requests.
  • To support multiple users (admins, team members, customers, etc), consider implementing a form of Access Control List for better security.

About

Match Tweets containing remote developer jobs using Filtered Stream and Tweet Annotations

License:Apache License 2.0


Languages

Language:JavaScript 86.2%Language:HTML 10.0%Language:CSS 3.8%