Skip to main content

A Streamlit app for movie discovery, watchlists, and recommendations.

Project description

Popcorn Meter

Popcorn Meter is a Python project built with Poetry. It includes a Streamlit UI and a layered package structure for application logic, infrastructure integrations, and tests.

Project Structure

<root>
|-- popcorn_meter/              # main package
|   |-- __init__.py
|   |-- __main__.py             # launches the Streamlit app
|   |-- application/            # use cases and ports
|   |-- infrastructure/         # OMDb + SQLite adapters
|   `-- ui/                     # Streamlit frontend
|-- tests/                      # unit/integration/ui tests
|-- .github/workflows/          # CI/CD workflows
|-- pyproject.toml              # Poetry configuration
|-- requirements.txt            # Poetry bootstrap dependency
|-- release.config.mjs          # semantic-release config
`-- renovate.json               # dependency update automation

Development

Install dependencies:

pip install -r requirements.txt
poetry install

Run tests:

poetry run poe test

Run static checks:

poetry run poe static-checks

Format code:

poetry run poe format

Run the app:

python -m popcorn_meter

or:

poetry run popcorn-meter

CI/CD and Releases

  • CI runs checks and tests on push and pull request via GitHub Actions.
  • Releases are managed by semantic-release through .github/workflows/deploy.yml.
  • Publish credentials are expected in repository secrets:
  • PYPI_USERNAME (use __token__)
  • PYPI_PASSWORD (PyPI API token)
  • RELEASE_TOKEN (GitHub token for release automation)

Dependency Updates

Renovate is configured via renovate.json to open and manage dependency update pull requests.

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

popcorn_meter-1.1.2.tar.gz (19.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

popcorn_meter-1.1.2-py3-none-any.whl (22.3 kB view details)

Uploaded Python 3

File details

Details for the file popcorn_meter-1.1.2.tar.gz.

File metadata

  • Download URL: popcorn_meter-1.1.2.tar.gz
  • Upload date:
  • Size: 19.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.12.3 Linux/6.14.0-1017-azure

File hashes

Hashes for popcorn_meter-1.1.2.tar.gz
Algorithm Hash digest
SHA256 e109e529255657a7491fff6df86b64dc113b34b337657863ae0d379da5766ade
MD5 802e966c76da8f2f48ad893a945e7d31
BLAKE2b-256 0a7ab225ecbbe6db8317187c4de63cd8e741eb417b65fdff259df5c3221508ce

See more details on using hashes here.

File details

Details for the file popcorn_meter-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: popcorn_meter-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 22.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.12.3 Linux/6.14.0-1017-azure

File hashes

Hashes for popcorn_meter-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 872d7110ec480399109ea0b99dc0a61a3ccc2800875ae910f95b2a2ce9c9ec0c
MD5 bea4e9fef107340fb51fffa916ab0761
BLAKE2b-256 0ce19090aac73d9ee94ed610110a4dd2fb576ae0290adcb7ace3cce0527ece98

See more details on using hashes here.

Supported by

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