In the Little Miss and Mr Men series of books, it is common for a character in their titular book to fundamentally change something about themselves. For example, in the book Mr. Greedy, Mr Greedy learns to eat less, and becomes thin instead of fat. However, in other books, the same characters appear as they were before their change. This implies a chronological ordering of the entire book series, which is what this program aims to calculate.
To run the program using Docker, follow these steps:
- Clone the repository:
git clone https://github.com/chrismear/miss_and_men_chronology.git
- Navigate to the project directory:
cd miss_and_men_chronology
- Run
docker-compose up --build
- View the output graph in
output
.
Or, to run locally:
- Clone the repository:
git clone https://github.com/chrismear/miss_and_men_chronology.git
- Navigate to the project directory:
cd miss_and_men_chronology
- Install GraphViz (e.g.
brew install graphviz
on macOS with Homebrew) - Install Ruby 3.3.3 (e.g.
rbenv install 3.3.3
) - Install the project's dependencies:
bundle install
- Run the program:
bin/bundle exec ruby miss_and_men_chronology.rb
- View the output graph in
output
.
Contributions are welcome! I particularly need help to make sure the data about characters' changes and appearances in each of the books is accurate and complete.
If you would like to contribute to this project, please follow these guidelines:
- Fork the repository
- Create a new branch:
git checkout -b feature/my-feature
- Make your changes and commit them:
git commit -m 'Add my feature'
- Make sure the tests pass:
bin/rake
- Push your changes to your forked repository:
git push origin feature/my-feature
- Open a pull request
This project is licensed under the GPL-3.0 license.
Little Miss and Mr Men Chronology Copyright (C) 2024 Chris Tucker MEar
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.