From cebcca400a3cc421a8a1ef84aee617c57066cb94 Mon Sep 17 00:00:00 2001 From: ckjolhede Date: Thu, 20 Jun 2024 10:40:55 -0600 Subject: [PATCH] readme --- README.md | 117 +++--------------------------------------------------- 1 file changed, 5 insertions(+), 112 deletions(-) diff --git a/README.md b/README.md index 6babbf9..11f2e5b 100644 --- a/README.md +++ b/README.md @@ -55,123 +55,16 @@ pipenv shell ![Schema] (./lib/assets/Monopolython(3).png) 4 tables reside within the database to organize and store game data for both during game_setup and synchronous data storage and retrieval during game play. -A CLI is, simply put, an interactive script and prompts the user and performs -operations based on user input. -The project template has a sample CLI in `lib/cli.py` that looks like this: +![alt text]() -```py -# lib/cli.py +This diagram dipicts the One to Many relationships between the Games table and both the Players and Game_spaces tables. -from helpers import ( - exit_program, - helper_1 -) +The Spaces table is a unique table that is static. It is the root source of game information that exists for every game encounter. +The CLI menus are designed to offer users a small number of options to navigate their way through the game experience. Starting with the game setup, the diagram below offers a roadmap of the flow of the program throughout the beginning of the game. -def main(): - while True: - menu() - choice = input("> ") - if choice == "0": - exit_program() - elif choice == "1": - helper_1() - else: - print("Invalid choice") +![alt text](lib/assets/gameboard2.jpg) -def menu(): - print("Please select an option:") - print("0. Exit the program") - print("1. Some useful function") - -if __name__ == "__main__": - main() -``` - -The helper functions are located in `lib/helpers.py`: - -```py -# lib/helpers.py - -def helper_1(): - print("Performing useful function#1.") - - -def exit_program(): - print("Goodbye!") - exit() -``` - -You can run the template CLI with `python lib/cli.py`, or include the shebang -and make it executable with `chmod +x`. The template CLI will ask for input, do -some work, and accomplish some sort of task. - -Past that, CLIs can be whatever you'd like, as long as you follow the project -requirements. - -Of course, you will update `lib/cli.py` with prompts that are appropriate for -your application, and you will update `lib/helpers.py` to replace `helper_1()` -with a useful function based on the specific problem domain you decide to -implement, along with adding other helper functions to the module. - -In the `lib/models` folder, you should rename `model_1.py` with the name of a -data model class from your specific problem domain, and add other classes to the -folder as needed. The file `lib/models/__init__.py` has been initialized to -create the necessary database constants. You need to add import statements to -the various data model classes in order to use the database constants. - -You are also welcome to implement a different module and directory structure. -However, your project should be well organized, modular, and follow the design -principal of separation of concerns, which means you should separate code -related to: - -- User interface -- Data persistence -- Problem domain rules and logic - ---- - -## Updating README.md - -`README.md` is a Markdown file that should describe your project. You will -replace the contents of this `README.md` file with a description of **your** -actual project. - -Markdown is not a language that we cover in Flatiron's Software Engineering -curriculum, but it's not a particularly difficult language to learn (if you've -ever left a comment on Reddit, you might already know the basics). Refer to the -cheat sheet in this assignments's resources for a basic guide to Markdown. - -### What Goes into a README? - -This README serves as a template. Replace the contents of this file to describe -the important files in your project and describe what they do. Each Python file -that you edit should get at least a paragraph, and each function should be -described with a sentence or two. - -Describe your actual CLI script first, and with a good level of detail. The rest -should be ordered by importance to the user. (Probably functions next, then -models.) - -Screenshots and links to resources that you used throughout are also useful to -users and collaborators, but a little more syntactically complicated. Only add -these in if you're feeling comfortable with Markdown. - ---- - -## Conclusion - -A lot of work goes into a good CLI, but it all relies on concepts that you've -practiced quite a bit by now. Hopefully this template and guide will get you off -to a good start with your Phase 3 Project. - -Happy coding! - ---- - -## Resources - -- [Markdown Cheat Sheet](https://www.markdownguide.org/cheat-sheet/)