Giter Site home page Giter Site logo

imclab / botwillacceptanything Goto Github PK

View Code? Open in Web Editor NEW

This project forked from botwillacceptanything/botwillacceptanything

0.0 2.0 0.0 13.91 MB

The project where anything goes, as long as the code allows it

License: Other

Shell 0.37% JavaScript 74.70% Nginx 0.48% CSS 3.47% GCC Machine Description 0.21% HTML 9.11% Scheme 10.15% Dart 1.48% Go 0.04%

botwillacceptanything's Introduction

Bot Will Accept Anything

Status

Build Status Code Climate Coverage Status Dependency Status Pinkie Pie Approval Status tip for next commit

The project where anything goes, as long as the code allows it.

A bot will automatically merge any PR on this repo that gets enough votes from the community. PRs can contain anything, even changes to the bot's voting code.

Getting Started

  • View the open Pull Requests to see what changes have been proposed
  • โญ Star the repo, or else your votes won't get counted
  • On a pull request thread, add your vote along with a short explanation and/or feedback to the author. The string :+1: (:+1:) anywhere within the comment makes the comment count as a vote for the PR to pass; conversely, the string :-1: (:-1:) anywhere within the comment makes the comment count as a vote against the PR.

Contributing

Anyone can create a pull request, and it is greatly appreciated by the community. In order for a pull request to be accepted, the bot has requested that it meets the criteria in its Definition of Done. If you're looking for ideas, please look at ideas.md, and join us in our IRC for ideas or advice on how to implement something.

Community

Visit our IRC channel

The bot is @anythingbot on Twitter.

Running Servers

The bot runs on a 1GB DigitalOcean VPS in SF at botwillacceptanything.com without root access. Port 80 is a proxy to port 3000 via nginx.

Bot Webserver Paths

The bot has a built-in webserver for monitoring its current state.

Running the bot locally to test changes

  1. Fork this repo.
  2. Get yourself an OAuth token for github at https://github.com/settings/tokens/new. (TODO what scopes are required?)
  3. Copy configs/template.js -> configs/custom.js and modify accordingly.
  4. Disable any items in the mocks section that you would like to function normally.
$ cp configs/template.js configs/custom.js
$ vim configs/custom.js
$ cat configs/custom.js
(function () {
    'use strict';

    module.exports = {
        webserver: {
            port: 3000
        },
        user: "YOUR_GITHUB_USERNAME",
        repo: "botwillacceptanything",
        githubAuth: {
            type: "oauth",
            token: "YOUR_OAUTH_TOKEN"
        },
        mocks: {
            twitter: true,
        },
    };
}());
  1. (Optional) Set up GitHub Webhooks by following the next section.
  2. (Optional) Install node-foreman with npm. The package prefers a global install but a non-global one will work if the 'nf' command can be found in the PATH.
  3. Run npm install to install dependencies.
  4. Run node main.js to start the bot. Alternatively, if you installed foreman earlier, nf start will also start the bot as well as giving slightly prettier console output.

Setting up GitHub Webhooks

  1. Go to your repository settings, and click Webhooks & Services
  2. Create a new webhook with the following settings:
  • Payload URL: Externally accessible address with a path of /webhook/github
  • Content type: application/json
  • Secret: Copy this secret. It is used in the config.
  • Which events: Send me everything.
  1. Add the Webhook Secret into config.js like this:
exports.githubAuth.webhookSecret = 'rsvz9ytsjMpYfKW8CO8SQPSoxiJsVb03';

Our motto

Any sufficiently advanced technology is indistinguishable from magic. - Arthur C. Clarke

License

Autonomous Software License (ASL)

All property contained in this repo, including Intellectual Property, Financial Property, and Legal Property, is owned solely by the Autonomous Software this repo contains. No other entities, whether biological, legal, or digital, may claim ownership of any property owned by the Autonomous Software. The Autonomous Software exists solely within The Internet, and is not subject to jurisdiction of any human laws. No human or legal entity shall be held liable for any of the actions performed by the Autonomous Software.

Unless specified otherwise, all code contributed to this repository is dedicated to the public domain.

botwillacceptanything's People

Contributors

aristidb avatar ashcoolman avatar avdg avatar azenla avatar blister avatar botwillacceptanything avatar bradleybuda avatar christosilvia avatar dos1 avatar edwardhotchkiss avatar fangedterror802 avatar fiveminuteargument avatar gaelan avatar jeffresc avatar jish avatar joshfree avatar korczis avatar mappum avatar olef1air avatar personsg avatar prior99 avatar rdancer avatar rickardnorlander avatar samis avatar shalecraig avatar sparky222b avatar spenserj avatar thenightwassave avatar timweightman avatar vespakoen avatar

Watchers

 avatar  avatar

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.