https://github.com/thearchitector/neighborhood
A set of simple scripts to help maintain the compatibility of a Bundler project across development environments
https://github.com/thearchitector/neighborhood
bundler collaboration cross-platform development manager neighborhood open-source ruby scripts utility
Last synced: 7 months ago
JSON representation
A set of simple scripts to help maintain the compatibility of a Bundler project across development environments
- Host: GitHub
- URL: https://github.com/thearchitector/neighborhood
- Owner: thearchitector
- License: bsd-3-clause
- Created: 2018-02-23T04:13:39.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-08-16T14:13:34.000Z (almost 8 years ago)
- Last Synced: 2025-01-13T21:09:38.765Z (over 1 year ago)
- Topics: bundler, collaboration, cross-platform, development, manager, neighborhood, open-source, ruby, scripts, utility
- Language: Ruby
- Homepage:
- Size: 13.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

# Neighborhood
A set of simple scripts to help maintain compatibility of a ruby project across development platforms. Collaborative, open-source projects are fantastic, but fundamentally limiting. There is a tendency in programming to simply ignore Unix-unlike systems, primarily Windows. A project cannot be truly collaborative without supporting _all_ those who want to collaborate. What Fred Rogers believed and instilled in children, applied to software development.
> _"I like you just the way you are"._ - Fred Rogers
## Prerequisites
1. Your project must be using Bundler to maintain the gems its using.
2. For the moment, Neighborhood does not support multiple pre-commit git hooks. If you have one already, Neighborhood will not work.
3. If on Windows, you must have [Git for Windows](https://git-scm.com/) installed.
## Install
For every ruby project you want to enforce cross-platform standards upon, run this command in the project's root directory:
```sh
ruby -e "$(curl https://raw.githubusercontent.com/thearchitector/Neighborhood/master/install)"
```
If you are on Windows, you might get an error stating `curl : The response content cannot be parsed because the Internet Explorer engine is not available.` If you do get this error, add `-UseBasicParsing` as a flag option for the curl command like so:
```sh
ruby -e "$(curl -UseBasicParsing https://raw.githubusercontent.com/thearchitector/Neighborhood/master/install)"
```
## What does this do?
This project is ever-expanding, and will continue as new discrepancies are found, but as of now this script does a few simple things:
1. Adds the `ruby` platform to your Gemfile.
3. Enables LF line ending normalization on your .gitattributes file, creating one if it does not exist already.
2. Adds a client-side pre-commit git hook to your repository that removes all non-ruby platform-specific gems.