{"id":28496240,"url":"https://github.com/sanaro99/django-svelte-ecommerce","last_synced_at":"2026-04-12T18:36:45.204Z","repository":{"id":297693424,"uuid":"997039156","full_name":"sanaro99/django-svelte-ecommerce","owner":"sanaro99","description":"A production-ready, modern e-commerce platform built with:  Django + Django REST Framework (backend, API, OAuth2, Railway-ready), SvelteKit (frontend, DaisyUI, SEO friendly, Vercel-ready), PostgreSQL (Supabase)","archived":false,"fork":false,"pushed_at":"2025-06-10T08:29:26.000Z","size":499,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-02T15:42:45.363Z","etag":null,"topics":["django","django-rest-framework","ecommerce","oauth2","postgresql","shop","svelte"],"latest_commit_sha":null,"homepage":"https://django-svelte-ecommerce.vercel.app","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sanaro99.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-05T21:20:35.000Z","updated_at":"2025-06-10T08:30:57.000Z","dependencies_parsed_at":"2025-06-06T22:29:51.779Z","dependency_job_id":null,"html_url":"https://github.com/sanaro99/django-svelte-ecommerce","commit_stats":null,"previous_names":["sanaro99/django-svelte-ecommerce"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sanaro99/django-svelte-ecommerce","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanaro99%2Fdjango-svelte-ecommerce","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanaro99%2Fdjango-svelte-ecommerce/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanaro99%2Fdjango-svelte-ecommerce/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanaro99%2Fdjango-svelte-ecommerce/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sanaro99","download_url":"https://codeload.github.com/sanaro99/django-svelte-ecommerce/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sanaro99%2Fdjango-svelte-ecommerce/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264005160,"owners_count":23542829,"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":["django","django-rest-framework","ecommerce","oauth2","postgresql","shop","svelte"],"created_at":"2025-06-08T12:06:53.759Z","updated_at":"2026-04-12T18:36:40.165Z","avatar_url":"https://github.com/sanaro99.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# django-svelte-ecommerce\n\nA production-ready, modern e-commerce platform built with:\n\n* **Django + Django REST Framework** (backend, API, OAuth2, Railway-ready)\n* **SvelteKit** (frontend, SEO friendly, Vercel-ready)\n* **PostgreSQL** (Supabase)\n\n## Live Demo\n\nFrontend: [https://django-svelte-ecommerce.vercel.app](https://django-svelte-ecommerce.vercel.app)\n\nBackend: [https://django-svelte-ecommerce-production.up.railway.app](https://django-svelte-ecommerce-production.up.railway.app)\n\nTest user credentials:\nPlease reach out to me for test user credentials or create your own by using the [registration form](https://django-svelte-ecommerce.vercel.app/register) on the frontend.\n\n\u003cu\u003e*Disclaimer:*\u003c/u\u003e This live demo is running on free-tier infrastructure across multiple global regions and providers. As a result, response times may vary and performance is not guaranteed. This environment is intended for testing and evaluation purposes only and *should not be used for production workloads.*\n\n## Monorepo Structure\n\n```\n.\n├── backend/      # Django project \u0026 API backend\n├── frontend/     # SvelteKit app (SSR frontend)\n```\n\n## Local Development\n\n**Prerequisites:**\n\n* Python 3.10+\n* Node.js 18+\n* Supabase account\n\n### Backend setup\n\n```bash\ncd backend\npython -m venv .venv\nsource .venv/bin/activate  # On Windows: .venv\\Scripts\\activate\npip install -r requirements.txt\ncp .env.example .env       # Edit .env file as needed\npython manage.py createsuperuser\npython manage.py makemigrations\npython manage.py migrate\npython manage.py seed_data # To seed sample data using Faker library # Optional\n```\nOpen /o/applications/ and add an application. Copy the client id and client secret and replace it in .env file.\nclient type: ```public``` \\\nAuthorization grant type: ```authorization code``` \\\nRedirect URI list: \n```\n\u003cyour-backend-url\u003e/oauth2-redirect.html\n\u003cyour-frontend-url\u003e/auth/callback\n```\nFinally, run the server:\n```bash\npython manage.py runserver\n```\n\n### Frontend setup\n\n```bash\ncd frontend\nnpm install\nnpm run dev\n```\n\n## Running Tests\n\n### Backend\n\n```bash\ncd backend\npython manage.py test\n```\n\nFor more info, check [backend/ecomm/TESTING.md](backend/ecomm/TESTING.md)\n\n### Frontend\n\n```bash\ncd frontend\nnpm run test\n```\n\n## API Documentation and Usage Examples\n\nAPI Documentation is available at [https://django-svelte-ecommerce-production.up.railway.app/docs/](https://django-svelte-ecommerce-production.up.railway.app/docs/)\n\nCheck [API Usage Examples](backend/README.md#api-usage-examples) to see how the API is used.\n\n## Deployment\n\n### Backend (Railway)\n- Connect your GitHub repo to Railway.\n- Choose root directory as `backend`.\n- In Railway environment variables, set as per [backend/.env.example](./backend/.env.example):\n  - DJANGO_SECRET_KEY\n  - DB_NAME, DB_USER, DB_PASSWORD, DB_HOST, DB_PORT (Supabase Postgres)\n  - CLIENT_ID, CLIENT_SECRET\n  - BACKEND_PROD_URL, FRONTEND_PROD_URL\n- In Railway Start Command:\n  ```\n  gunicorn ecomm.wsgi:application\n  ```\n\n### Frontend (Vercel)\n- Connect your repo to Vercel.\n- Choose root directory as `frontend`.\n- In Vercel environment variables, set as per [frontend/.env.example](./frontend/.env.example):\n  - VITE_BACKEND_BASE_URL\n  - VITE_CLIENT_ID\n  - VITE_FRONTEND_BASE_URL\n- Build command: `npm run build` # This is the default build command\n- Output directory: `build` # This is the default output directory\n\n### Database (Supabase)\n- Use Supabase Postgres in production.\n- Provide DB credentials via Railway environment variables above.\n- Use the shared pooler connection variables if you're connecting using Railway/Render\n\n---","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsanaro99%2Fdjango-svelte-ecommerce","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsanaro99%2Fdjango-svelte-ecommerce","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsanaro99%2Fdjango-svelte-ecommerce/lists"}