Skip to main content

sediment-related educational activity suite

Project description

Build Status

Anaconda-Server Badge PyPI version

SedEdu is a suite of educational activities related to geomorphology and sedimentology. The suite is targeted at educators who want to bring engaging, interactive, and scientifically relevant activities into their classroom. SedEdu is built entirely in Python and is free and open source software. Modules included in SedEdu are built by researchers at the cutting edge of their fields and are designed to showcase their research in a digestible manner.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for use in the classroom. See Contributing to SedEdu for information on becoming a part of the SedEdu project.

Installing dependencies

SedEdu runs in Python 3 and utilizes PyQt5 for rendering the graphical user interface. Modules included in SedEdu rely on scipy, matplotlib, pillow, and shapely.

You can check your Python version by running: python3 -V in a terminal. Note that you may need to specify the path to your Python executable on some systems. If you do not have Python 3 installed, you will need to do so to use SedEdu. This will not disrupt an existing Python 2.x installation, if you rely on that for other uses.

If you are new to Python, it is strongly recommended that you install Anaconda Python, which is an open source distribution of Python which includes many basic scientific libraries, some of which are used in the module. Anaconda can be downloaded at https://www.anaconda.com/download/ for Windows, macOS, and Linux. If you do not have storage space on your machine for Anaconda or wish to install a smaller version of Python for another reason, see below on options for Miniconda or vanilla Python.

  1. Visit the website for Anaconda https://www.anaconda.com/download/ and select the installer for your operating system. Be sure to select the Python 3.x installation.
  2. Start the installer.
  3. If prompted, select to "install just for me", unless you know what you are doing.
  4. When prompted to add Anaconda to the path during installation, select yes if you know you do not have any other Python installed on your computer; otherwise select no.
  5. If you received no errors, proceed to installing below.

If you want a more flexible and lightweight Python distribution, you can use whatever your favorite package manager is distributing (e.g., homebrew or apt), check the Windows downloads here, or compile from source. If you go this route, you will need to also install pip3, PyQt5 (python3-pyqt5), and the dependency python packages listed below.

Note that on Linux, users may need to specify an installation of pyqt and/or tkinter directly from apt: Install PyQt5:

sudo apt install python3-pyqt5 python3-tk

Installing SedEdu

If you installed Anaconda Python or Miniconda, you can follow the instructions below for your operating system. Otherwise see the instructions for PyPi installation below.

Please open an issue if you encounter any troubles installing or any error messages along the way! Please include 1) operating system, 2) installation method, and 3) copy-paste the error.

Windows users

  1. Open your "start menu" and search for the "Anaconda prompt"; start this application.
  2. Install pyqt5 with the following command and hit "enter":
conda install -c conda-forge pyqt
  1. Install with the module type the following command and hit "enter":
conda install -c sededu sededu

If asked to proceed at either step, type Y and press "enter" to continue installation. 4. This process may take a few minutes as the necessary source code is downloaded. If the installation succeeds, proceed below to the "Run the module" section.

Note on permissions: you may need to run the Anaconda prompy "as administrator" on Windows.

Mac OSX and Linux users

  1. Install the module by opening a terminal and typing the following command.
conda install -c sededu sededu

If asked to proceed at either step, type Y and press enter to continue installation. 2. This process may take a few minutes as the necessary source code is downloaded. If the installation succeeds, proceed below to the "Run the module" section.

Note on permissions: you may need to use sudo on OSX and Linux.

Advanced user installations

Install with pip To install with pip from Pypi use (not recommended for entry-level users):

pip install pyqt5 sededu

or in the event of a failed install, try:

pip install pyqt sededu

See below instructions for downloading the source code if you wish to be able to modify the source code for development or for exploration.

Install by cloning the repository

Developers see below: You can clone the git repository to get the latest release version with:

git clone --recurse-submodules -b develop https://git@github.com/sededu/sededu.git

and SedEdu is then run with:

python sededu/run_sededu.py

Note that if you have no modules: run git submodule update --init --recursive.

Running SedEdu

  1. Open a Python shell by typing python (or python3) at the terminal (OSX and Linux users) or at the Anaconda / Command Prompt (Windows users).
  2. Windows users only: run activate root
  3. Run the module from the Python shell with:
import sededu

Instructions will indicate to use the following command to then run the module:

sededu.run()

Alternatively, you can do this in one line from the standard terminal with:

python -c "import sededu; sededu.run()"

Alternatively, run the module with provided script:

python <path-to-installation>run_sededu.py

Please open an issue if you encounter any additional error messages! Please include 1) operating system, 2) installation method, and 3) copy-paste the error.

Troubleshooting

  • SedEdu won't launch: you're probably missing some Python or PyQt dependencies. If you pip installed, did you install pyqt? Linuz users: try sudo apt install python3-pyqt5.

  • There are no modules in SedEdu: you probably didn't get the submodules when you git cloned. Try git submodule update --init --recursive inside the cloned repository.

Contributing to SedEdu

Project Status: Active – The project has reached a stable, usable state and is being actively developed.

The SedEdu project needs contributions from the community to be successful. However, there are many different ways you can contribute! You do not even need to write code to contribute to SedEdu. Some opportunities for contributions are listed below (in no particular order):

  • write (code) a standalone interactive module
  • write an activity for an existing module
  • write (code) features and bug fixes for existing modules
  • write (code) features and bug fixes for SedEdu
  • write documentation for SedEdu

Please read CONTRIBUTING.md for details on our code of conduct, and the process for contributing to SedEdu (which includes any pull request).

Developer installation

Dev channel stats: Build Status Coverage Status

You should get the entire repository and work off of the develop branch:

git clone --recurse-submodules https://github.com/sededu/sededu.git
git checkout -b <name-of-working-branch> develop

If you have already git cloned and need to pull the submodules now try:

git submodule update --init --recursive

See CONTRIBUTING.md for more information on the preferred git workflow for SedEdu, including a note on hot-fixes.

Authors

See also the list of contributors who have participated in this project in other ways.

License

This project is licensed under the GNU GPL License - see the full license file for details. It is provided without warranty or guaranteed support. Each submodule may be licensed under a different license, please see the relevant module's license file, README, or project homepage for more information.

Acknowledgments

The SedEdu framework was created by Andrew J. Moodie but has been built through the efforts of many authors (see Authors above). The authors have been supported by:

  • The US National Science Foundation under Grant Nos. 1427262 and 1450681.

Disclaimer

Any opinion, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of any funding agency.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sededu-1.1.10.tar.gz (42.0 MB view details)

Uploaded Source

Built Distribution

sededu-1.1.10-py3-none-any.whl (41.9 MB view details)

Uploaded Python 3

File details

Details for the file sededu-1.1.10.tar.gz.

File metadata

  • Download URL: sededu-1.1.10.tar.gz
  • Upload date:
  • Size: 42.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for sededu-1.1.10.tar.gz
Algorithm Hash digest
SHA256 fe42bcaa51abe15d573a5ec613f2af5cf77e3bf1056e3bf22fe4952689804033
MD5 2cacba223b67ba4a1acd0a8a7034036c
BLAKE2b-256 4973969c5b6e3dba33909f0e36b77352541d85bbe7a9d0e3e17bd048e518c7a1

See more details on using hashes here.

File details

Details for the file sededu-1.1.10-py3-none-any.whl.

File metadata

  • Download URL: sededu-1.1.10-py3-none-any.whl
  • Upload date:
  • Size: 41.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for sededu-1.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 5554bdd08657817e1c8e3fddf1f31fbb5fd33d590627e1a8640255c0d4d05ed6
MD5 09c448c1e8fc2ec9d8c2a186490bdefa
BLAKE2b-256 5f39d499bf0e25c21f7a7313af20eff7500148ba3ec136afaec45ccfe6b7b17b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page