Skip to content

Commit

Permalink
Merge pull request #42 from mucsci-students/develop
Browse files Browse the repository at this point in the history
v3.0 Release
  • Loading branch information
willkill07 authored Apr 6, 2020
2 parents 7b1c1ea + 1842eea commit 7e54d48
Show file tree
Hide file tree
Showing 36 changed files with 1,955 additions and 355 deletions.
Binary file removed .coverage
Binary file not shown.
45 changes: 45 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Contributing

When contributing to this repository, please first discuss the change you wish to make via issue or any other method with the maintainers of this repository before making a change.

Please note our code of conduct, and please follow it whenever interacting with the project.

## Pull requests

Please note our pull request template, and please follow it/fill it in when submitting a PR.
Please ensure that the checklist is fully completed before submitting a PR.

Pull requests can be merged once a change is signed off on by another developer.

## Bug reports

Please write any bug reports with as much detail as possible.

### If possible, provide:
- A quick summary of the situation
- Any background to help understand the scenario
- Steps to reproduce the issue (be *very* specific!)
- What was expected to occur
- What actually occurred
- Any notes which could help whoever works on the issue
- If you've tried to fix it, what you've tried
- Why you think it may be happening

Giving as much detail as possible will help our community and developers solve the issue as quickly as possible!

## Follow common coding conventions for the language in which you are contributing

### For example:
- Python :: https://docs.python-guide.org/writing/style/
- HTML/CSS :: https://www.w3schools.com/html/html5_syntax.asp
- JavaScript :: https://javascript.info/coding-style

Overall, ensure your code is readable, with adequate commenting on hard-to-understand sections.

## All contributions are made under the MIT Software License

Please note our license, and know that any submissions are understood to be under the same license.

## References

This guide was adapted from briandk's [contributing template](https://gist.github.com/briandk/3d2e8b3ec8daf5a27a62).
29 changes: 29 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Primary and Secondary Authors
Please list all who worked on the change and their roles.

# Description

Please include a summary of the change and which issue is fixed.
List any dependencies that are required for this change.

## Type of change

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

# How Has This Been Tested?

Please describe the tests that you ran to verify your changes.
Provide instructions so we can reproduce.
Please also list any relevant details for your test configuration.

# Checklist:

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
34 changes: 34 additions & 0 deletions .github/workflows/pythonapp.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# 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, pull_request]

jobs:
build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up Python 3.8
uses: actions/setup-python@v1
with:
python-version: 3.8
- name: Install dependencies
run: |
sudo apt-get install libncurses5-dev
python3 install.py
- name: Lint with flake8
run: |
pip install flake8
# 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: |
pip install pytest
pytest
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ app_package/database.db
env
.vscode
**/*.pyc
.coverage
6 changes: 0 additions & 6 deletions .vscode/settings.json

This file was deleted.

76 changes: 76 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# Contributor Covenant Code of Conduct

## Our Pledge

In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, sex characteristics, gender identity and expression,
level of experience, education, socio-economic status, nationality, personal
appearance, race, religion, or sexual identity and orientation.

## Our Standards

Examples of behavior that contributes to creating a positive environment
include:

* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.

## Scope

This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at [email protected]. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html

[homepage]: https://www.contributor-covenant.org

For answers to common questions about this code of conduct, see
https://www.contributor-covenant.org/faq
4 changes: 2 additions & 2 deletions LICENSE.txt → LICENSE
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
MIT License

Copyright (c) 2020 Cowboy Emoji 7 <Nate Remlinger, Deven Cohick, Ryan
Webster, Nick L�ser, Ethan Gingrich>
Webster, Nick Löser, Ethan Gingrich>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand All @@ -20,4 +20,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
SOFTWARE.
75 changes: 75 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# Cowboy Emoji 7 UML Editor
This project is an open source UML editor built using Flask, jsPlumb, SQLAlchemy, and other useful open source projects. Contains a command line interface, as well as a graphical interface that runs inside your browser. This project exists as a passion project for us at Cowboy Emoji 7--passion for the Unified Modeling Language and, to a lesser extent, passion for passing grades <sup><sup>and degrees</sup></sup>.

# Installation

### Python:
- Make sure that python3 is installed on your computer
- Also make sure that python is located as a path in your enviroment variables

### Install virtualenv:
- Type `pip install virtualenv`

### Create a virtual environment (only done once):
- Navigate to directory root
- Type `virtualenv env`

**Here is where different operating systems require different commands.**
- [Windows Installation](#windows)
- [Linux/Mac Installation](#linux-or-mac)



## LINUX or MAC

### Install all dependencies:
- Navigate to the main project folder (*'220 cowboy'*)
- Activate environment.
- Type `source env/bin/activate`
- Type `python3 install.py` to install libraries

***Both operations below assume you are inside of the activated enviroment***

### To clear and create a new Database:
- Note: A database is created automatically in running the application if one does not already exist. There is no need to run this command unless you have a database and want a new, empty one.
- Type `python3 cleardb.py`
- If a warning containing (*SQLALCHEMY_TRACK_MODIFICATIONS*) is thrown it can be safely ignored

### To run the application:
- `python3 run.py`
- If you would like the web view, type `web` in the console that appears

## WINDOWS

### Install all dependencies:
- Navigate to the main project folder (*'220 cowboy'*)
- Activate environment.
- Type `env\Scripts\activate`
- Type `python install.py` to install libraries

***Both operations below assume you are inside of the activated enviroment***

### To clear and create a new Database:
- Note: A database is created automatically in running the application if one does not already exist. There is no need to run this command unless you have a database and want a new, empty one.
- `python cleardb.py`
- If a warning containing (*SQLALCHEMY_TRACK_MODIFICATIONS*) is thrown it can be safely ignored

### To run the application:
- python run.py
- If you would like the web view, type 'web' in the console that appears

# Tests
We have a continuous integration setup that runs our current suite of pytest tests with every push and pull request.

*pytest tests can be found in /tests/ , feel free to contribute*

To run tests manually, ensure pytest is installed on your system and run 'pytest' in the top level of the project.

# Use
See USERGUIDE.md

# Contribute
See CONTRIBUTING.md and CODE_OF_CONDUCT.md

# License
See LICENSE and NOTICE.txt
50 changes: 0 additions & 50 deletions README.txt

This file was deleted.

Loading

0 comments on commit 7e54d48

Please sign in to comment.