Git Product home page Git Product logo

awesome-mobx-bot's Introduction

awesome-mobx-bot

a GitHub App built with probot that automates awesome-list related tasks for the Awesome MobX List

Setup

# See below to configure the environment variables as needed

# Install dependencies
yarn install

# Run the bot (in local development)
yarn run dev

# Run the bot (in production)
yarn start

Configuring

The following environment variables are needed to run the bot:

  • APP_ID: Your GitHub App ID
  • Private key
    • PRIVATE_KEY_PATH: Path to your GitHub-provided Private Key (recommended for local development)
    • PRIVATE_KEY: String form of your GitHub-provided Private Key (recommended for production on Now.sh)
  • WEBHOOK_PROXY_URL: A URL provided by smee.io (for development only)
  • WEBHOOK_SECRET: Secret set in your GitHub App settings

Testing

Simulating webhooks

# Pick a fixture and action, then sub in here
probot simulate issues __tests__/fixtures/issue_link_primitive.json index.js

Deployment

Configure now by adding secrets:

now secrets add mobxbot-webhook-secret <SECRET_GOES_HERE>
now secrets add mobxbot-private-key "$(cat private-key*.pem | base64)"

# Finally deploy the app
now
now alias

See docs/deploy.md if you would like to run your own instance of this app.

awesome-mobx-bot's People

Contributors

hawkins avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

awesome-mobx-bot's Issues

Overall ideas

โ˜”๏ธ Overall ideas for the project

  • Be able to create PRs to include links in both README.md and the CN version based on an issue with a link and optionally some text - #20
    Auto-translate PRs that do not translate to the other versions
    Auto-translate PRs with the needs-translation: CN label
  • Check the awesome list for duplicate links when a user posts a link
  • Modify PRs to unfurl links

Lock closed issues

After 3 days of being closed, lock issues with a comment that asks new commenters to open a new issue and reference the old one.

This should be applied to more than just the awesome list

Cc @mweststrate

Git integration

Now that we have all the necessary info, we need to be able to:

  • Create a branch
  • Create a commit with our change added
  • Open a pull request

Translate to Chinese

Need to integrate google translate to translate resource names to Chinese for README-CN.md.

See #20 , but in Chinese

Generalize for all Awesome Lists

Right now the code is pretty specific to MobX, but could easily be generalized through something like an abstract class / interface that users could implement to make it compatible with other awesome lists.

Clean up root folder

I'm really not a fan of all the binaries being in the root folder; can we push them all into a /bin folder and use them there?

Actual testing suite

I'm not a fan of creating so many issues on github to test the app; it's about time the project gets proper tests so we can more easily develop the app in silence

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.