{"id":28739834,"url":"https://github.com/codingforentrepreneurs/micro-ecommerce","last_synced_at":"2025-06-16T06:11:01.786Z","repository":{"id":149246723,"uuid":"617979952","full_name":"codingforentrepreneurs/micro-ecommerce","owner":"codingforentrepreneurs","description":"Learn how to build a Micro eCommerce Web App with Python, Serverless Postgres, and Stripe Checkout. Live demo at url below.","archived":false,"fork":false,"pushed_at":"2024-02-13T16:40:15.000Z","size":4796,"stargazers_count":76,"open_issues_count":2,"forks_count":49,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-10T01:58:38.454Z","etag":null,"topics":["containers","django","docker","ecommerce","neon","python","serverless-postgres","stripe-api","tutorial"],"latest_commit_sha":null,"homepage":"https://micro-ecommerce.demo.cfe.sh/","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codingforentrepreneurs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-03-23T14:06:08.000Z","updated_at":"2025-04-21T12:06:30.000Z","dependencies_parsed_at":null,"dependency_job_id":"2ce1ad6d-6de4-47f3-9c3f-555e3b0ff09b","html_url":"https://github.com/codingforentrepreneurs/micro-ecommerce","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/codingforentrepreneurs/micro-ecommerce","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codingforentrepreneurs%2Fmicro-ecommerce","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codingforentrepreneurs%2Fmicro-ecommerce/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codingforentrepreneurs%2Fmicro-ecommerce/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codingforentrepreneurs%2Fmicro-ecommerce/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codingforentrepreneurs","download_url":"https://codeload.github.com/codingforentrepreneurs/micro-ecommerce/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codingforentrepreneurs%2Fmicro-ecommerce/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260109606,"owners_count":22960037,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["containers","django","docker","ecommerce","neon","python","serverless-postgres","stripe-api","tutorial"],"created_at":"2025-06-16T06:11:01.053Z","updated_at":"2025-06-16T06:11:01.771Z","avatar_url":"https://github.com/codingforentrepreneurs.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# micro-ecommerce\nLearn how to build a Micro eCommerce Web App with Python and Serverless Postgres\n\n\n## Prerequisites\n- Python experience with [30 Days of Python](https://www.codingforentrepreneurs.com/courses/30-days-python-38/) or similiar\n- Django experience with [Try Django](https://www.codingforentrepreneurs.com/courses/try-django-3-2/) or similiar\n- Basic understanding of HTML and CSS\n\n## Required Software\n- [Python 3.10](https://www.python.org/downloads/) or newer\n- [Node.js 18.15 LTS](https://nodejs.org/) or newer (For Tailwind.CSS)\n- [Git](https://git-scm.com/)\n\n\n## Getting Started\n\n```bash\nmkdir -p ~/dev\ncd ~/dev\ngit clone https://github.com/codingforentrepreneurs/micro-ecommerce\ncd micro-ecommerce\ngit checkout start\n```\n\n### Create dotenv file:\n\nRun `echo \"\" \u003e .env` to create the `.env` in the root of your project:\n\n```bash\nDATABASE_URL=\"\"\nDJANGO_SECRET_KEY=\u003csome-secret\u003e\nDJANGO_DEBUG=1\nALLOWED_HOST=\"*\"\n```\nReplace `\u003csome-secret\u003e` by any of the following commands:\n\n```bash\nopenssl rand -base64 32\n```\n\n```bash\npython -c 'from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())'\n```\n\n```bash\npython -c 'import secrets;print(secrets.token_urlsafe(32))'\n```\n\n\n=== Configure Environment\n\nTo install packages and run various command shortcuts, we use [rav](https://github.com/jmitchel3/rav). Open `rav.yaml` to see the various commands available if you prefer to not use `rav`.\n\n_macOS/Linux Users_\n```bash\npython3 -m venv venv\nsource venv/bin/activate\nvenv/bin/python -m pip install pip pip-tools rav --upgrade\nvenv/bin/rav run installs\nrav run freeze\n```\nIn `rav.yaml`, you'll see that `rav run installs` maps to:\n\n- `venv/bin/pip-compile src/requirements/requirements.in -o src/requirements.txt`\n- `venv/bin/python -m pip install -r src/requirements.txt`\n- `npm install`\n\n\n_Windows Users_\n```powershell\nc:\\Python310\\python.exe -m venv venv\n.\\venv\\Scripts\\activate\npython -m pip install pip pip-tools rav --upgrade\nrav run win_installs\nrav run win_freeze\n```\nIn `rav.yaml`, you'll see that `rav run win_installs` maps to:\n\n- `pip-compile src/requirements/requirements.in -o src/requirements.txt`\n- `python -m pip install -r src/requirements.txt`\n- `npm install`\n\n\n=== Main Commands\n\nWith all the configuration done, here are the main commands you'll run:\n\n```\nrav run server\nrav run watch\nrav run vendor_pull\n```\n\n- `rav run server` maps to `python manage.py runserver` in the `src` folder\n- `rav run watch` triggers tailwind to watch the tailwind input file to make the compiled tailwind output file via `npx tailwindcss -i \u003cinput-path\u003e -o \u003coutput-path\u003e --watch`\n- `rav run vendor_pull` run this occasionally to pull the latest version of Flowbite, HTMX, and any other third party static vendor files you need.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodingforentrepreneurs%2Fmicro-ecommerce","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodingforentrepreneurs%2Fmicro-ecommerce","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodingforentrepreneurs%2Fmicro-ecommerce/lists"}