Skip to main content

A domain-specific language intended for event-driven acquisition, analysis, and visualization of data.

Project description

Data Visualization DSL

Access the powerful data-processing and visualization capabilities of the python ecosystem as well as programmatic dynamic updating using a friendly syntax.

Development

Getting started

In order to start developing the project, follow these simple steps:

  1. Clone the repository if you haven't already
  2. In the root project directory, run make init (Make should be installed). Follow the output of this script closely and make sure you perform and required actions.
  3. When this is done, you should have a Python virtual environment set up directly in the project. You can use the command make run to run the main program.
  4. Have fun!

JetBrains IDE setup (Tested for IntelliJ)

It might be useful to run, test, and debug the program through the IDE. To set up JetBrains configurations with the correct environment, follow these steps:

  1. Open the project normally in the IDE.
  2. In project structure (File > Project Structure on Mac), go to the SDKs tab under Platform Settings.
  3. Click the + button to add an SDK. Select "Add Python SDK".
  4. From the list of options, select "Pipenv Environment". Check that the base interpreter path points to a valid Python 3.8 installation, and "Install packages from Pipfile" is checked. Click OK and wait for the process to complete.
  5. Go to the Project tab and make sure Project SDK is set to "Pipenv (cpsc410_project1_team17) Python 3.8.5". In Modules , click cpsc410_project1_team17. In the Dependencies tab, make sure Module SDK is set to "Project SDK Pipenv ". Click OK.
  6. When editing a Python file, if you see an option to "Use Pipenv Interpreter", click it, and click install from Pipfile.

Create a run configuration

  1. Click "ADD CONFIGURATION". Click + and select "Python" from the list.
  2. Call the configuration "Main". For the main script, select main.py in the root project directory. Check the box for "Use SDK of module" (the module should be cpsc410_project1_team17). Click OK.

Create a testing configuration

  1. Click "ADD CONFIGURATION". Click + and select "Python tests / Unittests" from the list.
  2. Call the configuration "Tests" and select "Custom" as the target.
  3. In the Additional Arguments field, past the following:
discover -s tests -p "test_*.py"

Choose to use the SDK of the main module as before. Click OK.

FAQ

  1. How do I add source code?

    Simply edit or add python files to those found in the code directory.

  2. How do I add tests?

    Add test cases to the files in the test directory where appropriate. See the unittest docs for more info. If you need to add a new test file, it should be placed directly in the tests directory and have a name starting with "test_".

  3. How do I add dependencies?

    Ideally, consult with the team and Dev Lead first. To add to the project, run pipenv install <package> from the root directory and make sure everybody runs make-update upon getting the new Pipfile.

  4. What tools do we use? Python (obviously) for our central logic, numpy for numerical computations, PyQtGraph for visualization.

Git Procedure:

  • Create new branches for functionality that you're working on
  • Commit and push to the branch (make sure you run tests first!)
  • Create a pull request to master when you're ready
    • Try to keep pull requests small
    • Squash commits into one if your pull request includes multiple
    • Pull requests require at least one approver to be merged in

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

mystix-0.1.2.tar.gz (31.1 kB view details)

Uploaded Source

Built Distribution

mystix-0.1.2-py3-none-any.whl (60.3 kB view details)

Uploaded Python 3

File details

Details for the file mystix-0.1.2.tar.gz.

File metadata

  • Download URL: mystix-0.1.2.tar.gz
  • Upload date:
  • Size: 31.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

File hashes

Hashes for mystix-0.1.2.tar.gz
Algorithm Hash digest
SHA256 270bedc7f206e99f1ce0cd7850a522b63cb7aebdae07f52329a3adb2e4ec819e
MD5 f1dfafed647610732acd6f64166154a8
BLAKE2b-256 4783ca9d47af4aee7685c41d9fccf4599a367f952759ef8045e9cfd60939702e

See more details on using hashes here.

File details

Details for the file mystix-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: mystix-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 60.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

File hashes

Hashes for mystix-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4d6f7dda24361448ada78bfc4c099d12c3593a161eb4038bf2144490424b29d9
MD5 76ac51a4a0b3b40257c5d5cdf08d1d5f
BLAKE2b-256 591cc894b4fff123746f4c9c10908ede511cb645e8dfdca4b6c8bf8ea0b3a6e6

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