Skip to content

courchef/mpc-autofill

 
 

Repository files navigation

build tests Github all releases paypal

mpc-autofill

Automating MakePlayingCards' online ordering system.

JetBrains Logo (Main) logo.

If you're here to download the desktop client, check the Releases tab.

JetBrains supports this project's development through their Open Source Development licensing.

Monorepo Structure

  • Web project:
    • Located in /MPCAutofill,
    • Images stored in the Google Drives connected to the project are indexed in Elasticsearch,
    • Stack:
      • Backend:
        • Django 4,
        • The database of your choosing (Elasticsearch is fine),
        • Elasticsearch 7.x,
        • Google Drive API integration,
      • Frontend:
        • jQuery + jQuery UI,
        • Bootstrap 5,
        • Webpack + Babel for compiling and bundling the frontend,
    • Facilitates the generation of XML orders for use with the desktop client,
    • Intended to be deployed as a web application but can also be spun up locally with Docker.
  • Desktop client:
    • Located in /autofill,
    • Responsible for parsing XML orders, downloading images from Google Drive, and automating MPC's order creation interface.

Each component of the project has its own README; check those out for more details.

Requirements

  • Python 3.9+ and the packages specified in requirements.txt for each component (web project and desktop client).

Contributing

  • Please ensure that you install the pre-commit Python package and run pre-commit install before committing any code to your branch / PR - this will run black and isort on your code to maintain consistent styling, and run mypy to catch any static typing issues.
  • GitHub Actions is configured in this repository to run the Django project's end-to-end tests. To run these, it needs to access the Google Drive API, and does so through a repository secret named GOOGLE_DRIVE_API_KEY. If you fork this project, you'll need to set this repository secret for GitHub Actions to run these tests for you.

About

Automating MakePlayingCards' online ordering system

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 64.4%
  • HTML 17.8%
  • JavaScript 15.1%
  • CSS 0.9%
  • Shell 0.7%
  • Dockerfile 0.6%
  • Other 0.5%