From 2f5326b102d2377fd575eda4f16c490c524df47b Mon Sep 17 00:00:00 2001 From: Leah Nguyen Date: Sat, 17 Jul 2021 14:35:35 +0700 Subject: [PATCH] fix --- .github/ISSUE_TEMPLATE.md | 23 +++++ .github/PULL_REQUEST_TEMPLATE.md | 37 +++++++ .github/workflows/python-app.yml | 36 ------- .github/workflows/python-package.yml | 40 ------- IMG/main.gif | Bin 0 -> 28079 bytes README.md | 149 +++++++++++++++++---------- 6 files changed, 157 insertions(+), 128 deletions(-) create mode 100644 .github/ISSUE_TEMPLATE.md create mode 100644 .github/PULL_REQUEST_TEMPLATE.md delete mode 100644 .github/workflows/python-app.yml delete mode 100644 .github/workflows/python-package.yml create mode 100644 IMG/main.gif diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md new file mode 100644 index 00000000..463de054 --- /dev/null +++ b/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,23 @@ +# Description + + + +## Type of issue + +- [ ] Feature (New Script) +- [ ] Bug +- [ ] Documentation + +## Checklist: + +- [ ] I have read the project guidelines. +- [ ] I have checked previous issues to avoid duplicates. +- [ ] This issue will be meaningful for the project. + + + + diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000..2798e6b6 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,37 @@ +# Description + +A short summary of what is included in your Pull Request. + +Fixes #(issue_no) + + +- [ ] Issue_no: `````` +- [ ] Not applicable + + +## Type of change + +Choosing one or more options from the following as per the nature of your Pull request. + +- [ ] New project insert +- [ ] Bug fix (non-breaking change which fixes an issue) +- [ ] New feature (non-breaking change which adds functionality) +- [ ] Documentation Update + +## Project + + +- #### **Your Project Name:** + +- #### **Short Description:** Provide a short desctiption of your Python project + +# Checklist: +Please tick all the boxes that are fulfilled by your Pull Request. + +- [ ] I have named my files and folder, according to this project's guidelines. +- [ ] My code follows the style guidelines of this project. +- [ ] I have commented on my code, particularly in hard-to-understand areas. +- [ ] I have created a helpful and easy to understand `README.md`, according to the given [`README_TEMPLATE.`](https://github.com/nduongthucanh/python-mini-project/blob/master/README_TEMPLATE.md) +- [ ] My changes do not produce any warnings. diff --git a/.github/workflows/python-app.yml b/.github/workflows/python-app.yml deleted file mode 100644 index e559e1cb..00000000 --- a/.github/workflows/python-app.yml +++ /dev/null @@ -1,36 +0,0 @@ -# This workflow will install Python dependencies, run tests and lint with a single version of Python -# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions - -name: Python application - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - name: Set up Python 3.9 - uses: actions/setup-python@v2 - with: - python-version: 3.9 - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install flake8 pytest - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - - name: Lint with flake8 - run: | - # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics - # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - - name: Test with pytest - run: | - pytest diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml deleted file mode 100644 index efccd595..00000000 --- a/.github/workflows/python-package.yml +++ /dev/null @@ -1,40 +0,0 @@ -# This workflow will install Python dependencies, run tests and lint with a variety of Python versions -# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions - -name: Python package - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - -jobs: - build: - - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.7, 3.8, 3.9] - - steps: - - uses: actions/checkout@v2 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 - with: - python-version: ${{ matrix.python-version }} - - name: Install dependencies - run: | - python -m pip install --upgrade pip - python -m pip install flake8 pytest - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - - name: Lint with flake8 - run: | - # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics - # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - - name: Test with pytest - run: | - pytest diff --git a/IMG/main.gif b/IMG/main.gif new file mode 100644 index 0000000000000000000000000000000000000000..8ec7015ab3adf08b2aaa9336e0dc78767e9a49de GIT binary patch literal 28079 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 z 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 literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 33b4162c..f57e0585 100644 --- a/README.md +++ b/README.md @@ -5,36 +5,70 @@ [![forthebadge](https://forthebadge.com/images/badges/powered-by-coffee.svg)](https://forthebadge.com) [![forthebadge](https://forthebadge.com/images/badges/built-with-love.svg)](https://forthebadge.com) -[![forthebadge](https://forthebadge.com/images/badges/built-with-swag.svg)](https://forthebadge.com) +[![forthebadge](https://forthebadge.com/images/badges/powered-by-black-magic.svg)](https://forthebadge.com) [![forthebadge](https://forthebadge.com/images/badges/made-with-python.svg)](https://forthebadge.com) -# Python Mini Projects +# Python Mini Projects -![Issues](https://img.shields.io/github/issues/nduongthucanh/python-mini-project) -![Pull Requests](https://img.shields.io/github/issues-pr/nduongthucanh/python-mini-project) -![Forks](https://img.shields.io/github/forks/nduongthucanh/python-mini-project) -![Stars](https://img.shields.io/github/stars/nduongthucanh/python-mini-project) + > A collection of easy Python small projects to help you improve your programming skills. - A collection of easy Python small projects to help you improve your programming skills. +![Issues](https://img.shields.io/github/issues/nduongthucanh/python-mini-project?style=social&logo=github) +![Pull Requests](https://img.shields.io/github/issues-pr/nduongthucanh/python-mini-project?style=social&logo=github) +![Forks](https://img.shields.io/github/forks/nduongthucanh/python-mini-project?style=social&logo=github) +![Stars](https://img.shields.io/github/stars/nduongthucanh/python-mini-project?style=social&logo=github) +[![License](https://img.shields.io/github/license/nduongthucanh/python-mini-project?style=social&logo=github)](https://github.com/nduongthucanh/python-mini-project/blob/main/LICENSE) -## 📜 **Steps to follow** + +## Table Of Contents + - [ Aim Of The Project](#xml-version10-encodingutf-8svg-width24-height24-viewbox0-0-48-48-fillnone-xmlnshttpwwww3org2000svgrect-width48-height48-fillwhite-fill-opacity001circle-cx24-cy24-r20-stroke9013fe-stroke-width4-stroke-linecapround-stroke-linejoinroundpath-fill-ruleevenodd-clip-ruleevenodd-dm24-37v44v37z-fill50e3c2path-dm24-37v44-stroke9013fe-stroke-width4-stroke-linecapround-stroke-linejoinroundpath-fill-ruleevenodd-clip-ruleevenodd-dm36-24h44h36z-fill50e3c2path-dm36-24h44-stroke9013fe-stroke-width4-stroke-linecapround-stroke-linejoinroundpath-fill-ruleevenodd-clip-ruleevenodd-dm4-24h11h4z-fill50e3c2path-dm4-24h11-stroke9013fe-stroke-width4-stroke-linecapround-stroke-linejoinroundpath-fill-ruleevenodd-clip-ruleevenodd-dm24-11v4v11z-fill50e3c2path-dm24-11v4-stroke9013fe-stroke-width4-stroke-linecapround-stroke-linejoinroundsvg-aim-of-the-project) + - [ Contributing](#xml-version10-encodingutf-8svg-width24-height24-viewbox0-0-48-48-fillnone-xmlnshttpwwww3org2000svgrect-width48-height48-fillwhite-fill-opacity001rect-x28-y28-width16-height16-fill50e3c2-stroke9013fe-stroke-width4-stroke-linejoinroundpath-dm13-4l22-20h4l13-4z-fill50e3c2-stroke9013fe-stroke-width4-stroke-linejoinroundpath-dm36-20c404183-20-44-164183-44-12c44-758172-404183-4-36-4c315817-4-28-758172-28-12c28-164183-315817-20-36-20z-fill50e3c2-stroke9013fe-stroke-width4-stroke-linejoinroundpath-dm4-28l20-44-stroke9013fe-stroke-width4-stroke-linecapround-stroke-linejoinroundpath-dm20-28l4-44-stroke9013fe-stroke-width4-stroke-linecapround-stroke-linejoinroundsvg-contributing) + - [ README Template for scripts](#xml-version10-encodingutf-8svg-width24-height24-viewbox0-0-48-48-fillnone-xmlnshttpwwww3org2000svgrect-width48-height48-fillwhite-fill-opacity001path-dm10-44c889543-44-8-431046-8-42v6c8-489543-889543-4-10-4h38c391046-4-40-489543-40-6v42c40-431046-391046-44-38-44h10z-fill50e3c2-stroke9013fe-stroke-width4-stroke-linejoinroundpath-fill-ruleevenodd-clip-ruleevenodd-dm21-22v4h33v22l27-157273l21-22z-fill9013fe-strokefff-stroke-width4-stroke-linecapround-stroke-linejoinroundpath-dm10-4h38-stroke9013fe-stroke-width4-stroke-linecapround-stroke-linejoinroundsvg-readme-template-for-scripts) + - [ Projects](#xml-version10-encodingutf-8svg-width24-height24-viewbox0-0-48-48-fillnone-xmlnshttpwwww3org2000svgrect-width48-height48-fillwhite-fill-opacity001path-dm15-8c892487-8-4-129249-4-19c4-30-17-40-24-423262c31-40-44-30-44-19c44-129249-390751-8-33-8c292797-8-259907-98469-24-126738c220093-98469-187203-8-15-8z-fill50e3c2-stroke9013fe-stroke-width4-stroke-linecapround-stroke-linejoinroundsvg-projects) + - [ Feedback](#xml-version10-encodingutf-8svg-width24-height24-viewbox0-0-48-48-fillnone-xmlnshttpwwww3org2000svgpath-dm2137-36c2282-3075-2789-27-3373-2762c3929-2821-4371-329-4399-3848c4406-3995-4386-4136-4343-4267c4317-4347-4239-44-4154-44h117584c671004-44-292371-393814-391377-344311l999994-4h219999l259999-11l1743-1713l149999-14-fill50e3c2path-dm2137-36c2282-3075-2789-27-3373-2762c3929-2821-4371-329-4399-3848c4406-3995-4386-4136-4343-4267c4317-4347-4239-44-4154-44h117584c671004-44-292371-393814-391377-344311l999994-4h219999l259999-11l1743-1713l149999-14-stroke9013fe-stroke-width4-stroke-miterlimit2-stroke-linecapround-stroke-linejoinroundpath-dm174395-1713l219995-34-stroke9013fe-stroke-width4-stroke-miterlimit2-stroke-linecapround-stroke-linejoinroundsvg-feedback) -### 1. 🌟 Star The Repo + +## Aim Of The Project + +As a Python newbie, I understand the problems that people face when they first begin studying and attempting to understand various Data Science concepts, particularly Python. This project is designed for folks who are just getting started with Python principles and exploring GitHub as "contributors." + +My goal is to build a common playground where everyone, from beginners to experts, can learn and share knowledge, and I hope you enjoy your stay here! + +Let's "folk-ing" create amazing things together! 👉 + + +## Contributing + +
+ +Step 1: Star The Repo + Star the repo by pressing the topmost-right button to start your wonderful journey +![star repo](https://docs.github.com/assets/images/help/stars/starring-a-repository.png) + +
+ --- -### 2. 🍴 **Fork it** +
+ +Step 2: Fork it + On the [GitHub page for this repository](https://github.com/nduongthucanh/python-mini-project), click on the Button "**Fork**". ![fork image](https://help.github.com/assets/images/help/repository/fork_button.jpg) +
+ --- -### 3. 👥 **Clone it** +
+ +Step 3: Clone it + * **Method 1:** GitHub Desktop @@ -46,7 +80,7 @@ Learn more about how to clone the remote respository on your local machine using * **Method 2:** Git -To create clone ***your forked repository*** on your local machine, run this command inside your terminal: +Clone the forked repository. Open git bash and type: ```bash git clone https://github.com//python-mini-project.git @@ -58,67 +92,53 @@ git clone https://github.com//python-mini-project.git Learn more about [forking](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) and [cloning a repo](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository). ---- - -### 4. ⬆️ Set it up -* **Method 1:** GitHub Desktop - -Learn more about how to clone the remote respository on your local machine using **GitHub Desktop** [here](https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/adding-and-cloning-repositories/cloning-and-forking-repositories-from-github-desktop#cloning-a-repository). - -* **Method 2:** Git - -Run the following commands to see that *your local copy* has a reference to *your forked remote repository* in Github :octocat: - -```sh -$ git remote -v -origin https://github.com/Your_Username/python-mini-project.git (fetch) -origin https://github.com/Your_Username/python-mini-project.git (push) -``` - -Now, let's add a reference to the original [Python mini project](https://github.com/nduongthucanh/python-mini-project/) repository using - -```sh -$ git remote add upstream https://github.com/srimani-programmer/Breast-Cancer-Predictor.git -``` - -> This adds a new remote named ***upstream***. +
--- -### 5. ♻️ Sync it +
+ +Step 4: Create your feature branch + Always keep your local copy of the repository updated with the original repository. Before making any changes and/or in an appropriate interval, follow the following steps: * **Method 1:** GitHub Desktop +Learn more about how to creat new branch [here](https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/managing-branches#creating-a-branch) and how to fetch and pull origin from/to your local machine [here](https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/keeping-your-local-repository-in-sync-with-github/syncing-your-branch). + Learn more about how to fetch and pull origin from/to your local machine using **GitHub Desktop** [here](https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/keeping-your-local-repository-in-sync-with-github/syncing-your-branch). + + * **Method 2:** Git Run the following commands ***carefully*** to update your local repository ```sh -# Fetch all remote repositories and delete any deleted remote branches -$ git fetch --all --prune - -# Switch to `New_Pipeline` branch -$ git checkout New_Pipeline +# If you cloned a while ago, get the latest changes from upstream +git checkout +git pull upstream -# Reset local `main` branch to match the `upstream` repository's `main` branch -$ git reset --hard upstream/main +# Make a feature branch (Always check your current branch is up to date before creating a new branch from it to avoid merge conflicts) +git checkout -b -# Push changes to your forked `Breast-Cancer-Predictor` repo -$ git push -u origin New_Pipeline +# ``` ---- +
-### 6. 🐇 Ready, Set, Go... +--- +
+ +Step 6: Ready, Set, Go... + Once you have completed these steps, you are ready to start contributing to the project and creating **pull requests**. - Create a folder in - [projects directory](https://github.com/nduongthucanh/python-mini-project) according to issue name. + [projects directory](https://github.com/nduongthucanh/python-mini-project) according to your project name. +> The folder name should follow the following format "Your_Project_Name_Here". For example: Dice_Stimulator - Write your code and add to the respective folder in the projects directory, locally. - Don't forget to add a `README.md` in your folder, according to the [README_TEMPLATE.](https://github.com/Python-World/python-mini-projects/blob/master/README_TEMPLATE.md) @@ -141,7 +161,14 @@ Push the code *to your repository*. ```bash git push origin ``` -### 7. 🐢 Pull Request +
+ +--- + +
+ +Step 7: Pull Request + Go to the GitHub page of _your fork_, and **make a pull request**: @@ -151,14 +178,32 @@ Read more about pull requests on the [GitHub help pages](https://help.github.com Now wait, until *your Pull Request* is approved! If there are any conflicts, you will get a notification. -## README Template for scripts +
+ +
+ +## README Template for scripts + +please make sure to add a `README.md` file that follow the same construction as this template for consistency. [README Template](https://github.com/nduongthucanh/python-mini-project/blob/master/README_TEMPLATE.md) -## Projects ✨ +## Projects SR No | Project | Author --- | --- | --- 1 | [Dice Rolling Stimulator](https://github.com/nduongthucanh/python-mini-project/tree/main/Dice_Rolling_Stimulator) | [Leah Nguyen](https://github.com/nduongthucanh) 2 | [Dictionary](https://github.com/nduongthucanh/python-mini-project/tree/main/Dictionary)| [Leah Nguyen](https://github.com/nduongthucanh) 3 | [Hangman Game](https://github.com/nduongthucanh/python-mini-project/tree/main/Hangman_Game) | [Leah Nguyen](https://github.com/nduongthucanh) + +## Feedback + +If you have any feedback or ideas to improve this project, feel free to contact me via + + + Reeha's Linkdein + + + + Reeha's Github + \ No newline at end of file