Skip to main content

Django App Toolkit for selling digital and physical goods online.

Project description

Python Tests

Build, Bump, and Release

Django Vendor

Django App Toolkit for selling digital and physical goods online.

The philosophy is "Cart to Receipt". What you put in the cart and what you do after the purchase is up to you. The app is opinionated within scope.

Goals of the project:

  • Drop in to existing Django Sites without requiring changes to how Django works (flow, not fight)
  • Handle everything from the point of starting a purchase, until payment is complete.
  • BYOPM, Bring Your Own Product Model. Subclass your Product Model off of our base model and add whatever you want. You are responsible for things like Catalogs and Presenting products to the user, we handle the purchasing of the products and generate a receipt you can look for.

Docs

The docs can be found here: Documentation

For Developers

NOTE: It is reconmended that you first setup a virtual environment.

To install the project, all you need to do is check out the project and run the following to install all the dependencies:

pip install -e .

For developers, you'll need to also include a couple of dependencies that are only used in develop mode. Run this from the root level of the project.

pip install -e .'[dev]'

If you are working with Authirize.net you will need to run this:

pip install -e .'[authorizenet]'

If you are working with Stripe you will need to install this.

pip install -e .'[stripe]'

To run the project, go into the 'develop' folder:

To setup the models:

./manage.py migrate

Create the Super user

./manage.py createsuperuser

Then load the developer fixture if you want to pre-populate the cart & catalog

./manage.py loaddata developer

To run the project:

./manage.py runserver

to dump unit test data

./manage.py dumpdata --indent 4 auth.group --natural-foreign --natural-primary > fixtures/group.json
./manage.py dumpdata --indent 4 auth.user --natural-foreign > fixtures/user.json
./manage.py dumpdata --indent 4 -e contenttypes -e auth.permission -e sessions -e admin.logentry -e account.emailaddress -e auth.group -e auth.user > fixtures/unit_test.json

The install process

  1. Add the app to your project
  2. Create your Product model that inherits from the ProductModelBase base class.
  3. Change the settings.py value for VENDOR_PRODUCT_MODEL to point to your model
  4. Make migrations
  5. Migrate

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

django_vendor-0.7.1.tar.gz (125.3 kB view details)

Uploaded Source

Built Distribution

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

django_vendor-0.7.1-py3-none-any.whl (167.7 kB view details)

Uploaded Python 3

File details

Details for the file django_vendor-0.7.1.tar.gz.

File metadata

  • Download URL: django_vendor-0.7.1.tar.gz
  • Upload date:
  • Size: 125.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for django_vendor-0.7.1.tar.gz
Algorithm Hash digest
SHA256 d36a26dbded327d10ec60f5054803f2179034f68b163a39d353db435103ea5bb
MD5 5399a9c2ddde5aace2b0aeaa85b13a24
BLAKE2b-256 510b24de92f68a362f277dd67599a9ef5011a96d97f2c5d6262940e532511546

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_vendor-0.7.1.tar.gz:

Publisher: python-publish.yml on renderbox/django-vendor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file django_vendor-0.7.1-py3-none-any.whl.

File metadata

  • Download URL: django_vendor-0.7.1-py3-none-any.whl
  • Upload date:
  • Size: 167.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for django_vendor-0.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 536eae9b183d93b7c02ebc043f6bd0aa2870bfa8ec5beb6d75a987036befc4f1
MD5 50da5fbb25681340147580a2fcaa5d9a
BLAKE2b-256 854036bc9665308c7696cee0fd17abb2d489a6b860d845306cc3d803cb775ac4

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_vendor-0.7.1-py3-none-any.whl:

Publisher: python-publish.yml on renderbox/django-vendor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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