All Projects → bamos → girl

bamos / girl

Licence: MIT License
Check your GitHub READMEs for broken links.

Programming Languages

scala
5932 projects
HTML
75241 projects
shell
77523 projects

GitHub README Link Checker

Build Status

girl is a Github Readme Link Checker served over HTTP with Scala and Spray. A public version is hosted at http://bamos.github.io/girl.

Whitelist

To prevent misuse, girl restricts usage to GitHub users with over 50 followers or users and organizations on the whitelist. Please add your accounts and submit a pull request to gain access. Thanks!

Building

Before running locally, set your GitHub API token in the environment variable GITHUB_TOKEN, or modify the GitHub API connection in Girl.scala to another option from kohsuke.github.GitHub. Also in Girl.scala, if desired, set the minimum number of required followers to zero: val reqFollowers = 0.

girl is built with sbt. Executing sbt run from the girl directory will download the dependencies, compile the source code, and start an HTTP server on 0.0.0.0:8585. Main.scala configures the interface and port.

sbt-revolver is helpful for development. Start an sbt shell and execute ~re-start, which re-compiles and restarts the server upon source code changes.

Deployment with Docker

Girl can be deployed as a container with Docker. After replacing the string <token> in the Dockerfile with your GitHub API token, the following command will build and start the girl as an HTTP server on port 8585 of the container.

docker build -t girl .

Running as a System Service

girl.service is an example systemd service that calls start-service.sh to automatically start girl with the system.

Modify the paths to this repo on your system in both of the scripts and copy girl.service to /etc/systemd/system/girl.service. A symlink will not work, see this bug report for more details.

Basic controls are:

sudo systemctl start girl
sudo systemctl stop girl
sudo systemctl restart girl

And run on startup with:

sudo systemctl enable girl

Licensing

All portions are MIT-licensed.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].