{"id":26408226,"url":"https://github.com/damiancodes/mpesa_stk_integration","last_synced_at":"2025-10-27T12:19:12.117Z","repository":{"id":282170088,"uuid":"947711494","full_name":"damiancodes/Mpesa_stk_Integration","owner":"damiancodes","description":"This project enables seamless M-Pesa payments through STK Push, integrating PayHere for payment initiation and automated STK requests. ","archived":false,"fork":false,"pushed_at":"2025-05-13T17:13:37.000Z","size":15141,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-13T18:28:36.573Z","etag":null,"topics":["mpesa-api"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/damiancodes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-13T06:02:01.000Z","updated_at":"2025-05-13T17:13:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"c4b87582-2f11-4b61-9328-eb056144921a","html_url":"https://github.com/damiancodes/Mpesa_stk_Integration","commit_stats":null,"previous_names":["damiancodes/mpesa_stk_integration"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/damiancodes/Mpesa_stk_Integration","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damiancodes%2FMpesa_stk_Integration","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damiancodes%2FMpesa_stk_Integration/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damiancodes%2FMpesa_stk_Integration/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damiancodes%2FMpesa_stk_Integration/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/damiancodes","download_url":"https://codeload.github.com/damiancodes/Mpesa_stk_Integration/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/damiancodes%2FMpesa_stk_Integration/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273453513,"owners_count":25108470,"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","status":"online","status_checked_at":"2025-09-03T02:00:09.631Z","response_time":76,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["mpesa-api"],"created_at":"2025-03-17T18:39:28.123Z","updated_at":"2025-10-27T12:19:12.036Z","avatar_url":"https://github.com/damiancodes.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Healthcare Platform\n\nA modern, full-stack healthcare platform built with Django REST Framework (DRF), PostgreSQL, and a React (TypeScript, Material-UI) frontend.\n\n\n---\n\n## Requirements\n\n- **Python:** 3.10+\n- **Node.js:** 18+\n- **npm:** 9+\n- **PostgreSQL:** 13+ (or any recent version)\n- **Git:** for cloning the repository\n- **DBeaver** or **pgAdmin** (optional, for database inspection)\n\n### Backend Python Dependencies (from `requirements.txt`)\n- Django==5.2.1\n- djangorestframework==3.16.0\n- django-cors-headers==4.7.0\n- psycopg2-binary==2.9.10\n- python-dotenv==1.1.0\n- djangorestframework-simplejwt==5.5.0\n\n### Frontend Node.js Dependencies (from `package.json`)\n- @mui/material, @mui/icons-material, @emotion/react, @emotion/styled\n- react, react-dom, react-router-dom, react-hook-form, axios, @tanstack/react-query\n- vite, typescript, eslint, tailwindcss, testing-library (for dev/build)\n\n---\n\n## Setup Checklist\n\n-  Install Python 3.10+ and PostgreSQL\n-  Install Node.js 18+ and npm 9+\n-  Clone this repository\n  Set up PostgreSQL with the credentials provided below\n-  (Optional) Install DBeaver or pgAdmin for database inspection\n-  Create and activate a Python virtual environment\n-  Install backend dependencies: `pip install -r requirements.txt`\n-  Install frontend dependencies: `cd healthcare-frontend-vite \u0026\u0026 npm install`\n-  Run migrations and create a superuser\n  Start backend and frontend servers\n  (Optional) Run tests\n\n---\n\n## Features \u0026 Assignment Achievements\n Custom user model with extended fields\n Secure authentication and registration (JWT)\n Public and protected API endpoints\n PostgreSQL integration\n Responsive, modern UI with Material-UI\n Dark mode support\n Animated, interactive landing page\n RESTful API with OpenAPI schema\n Bonus: Animated cards, screenshots, and more!\n Comprehensive documentation\n\n---\n\n## Screenshots\n\n### Landing Page\n![Landing Page](images/landing.png)\n\n### Services Page\n![Services Page](images/services.png)\n\n### Patient Registration\n![Patient Registration](images/patientregister.png)\n\n### Login\n![Login](images/login.png)\n\n### Register\n![Register](images/register.png)\n\n---\n\n## Backend/API Endpoints Example\n### Apiservices\n![apisevices](https://github.com/damiancodes/MtreatAssignment/blob/master/images/apiservices.png)\n\n---\n\n\n\n---\n\n## Demo Credentials\n\n### Django Admin\n- URL: http://localhost:8000/admin/\n- Username: damian@gmail.com\n- Password: pascal123\n\n\n\n### PostgreSQL Database (DBeaver)\n- Host: localhost\n- Port: 5432\n- Database: healthcare-db\n- Username: postgres\n- Password: mtreat123\n\n---\n\n## API Endpoints\n- `POST /api/auth/login/` — Login\n- `POST /api/auth/register/` — Register\n- `GET /api/services/` — List all services\n- `POST /api/patients/` — Register a new patient\n- `GET /api/users/me/` — Get current user profile (auth required)\n- `GET /api/docs/` — API documentation (Swagger/OpenAPI)\n\n---\n\n## Getting Started\n\n### Backend Setup\n1. Clone the repository and navigate to the backend directory.\n2. Create and activate a virtual environment:\n   ```bash\n   python -m venv venv\n   source venv/bin/activate\n   ```\n3. Install dependencies:\n   ```bash\n   pip install -r requirements.txt\n   ```\n4. Set up PostgreSQL and update your `.env` or `settings.py` as needed.\n5. Run migrations and create a superuser:\n   ```bash\n   python manage.py migrate\n   python manage.py createsuperuser\n   ```\n6. Start the backend server:\n   ```bash\n   python manage.py runserver\n   ```\n\n### Frontend Setup\n1. Navigate to the `healthcare-frontend-vite` directory:\n   ```bash\n   cd healthcare-frontend-vite\n   ```\n2. Install dependencies:\n   ```bash\n   npm install\n   ```\n3. Start the frontend dev server:\n   ```bash\n   npm run dev\n   ```\n\n---\n\n## API Documentation\n- The OpenAPI schema is available at `/openapi-schema.yml`.\n- You can view interactive API docs at `/api/docs/` when the backend is running.\n\n---\n\n## Folder Structure\n```\n/healthcare-frontend-vite\n  /src\n    /components\n    /pages\n    /services\n    /hooks\n    /types\n  /images\n/backend (Django project)\n```\n\n---\n\n## Contribution \u0026 License\n- Contributions are welcome!\n- See LICENSE for details.\n\n---\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdamiancodes%2Fmpesa_stk_integration","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdamiancodes%2Fmpesa_stk_integration","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdamiancodes%2Fmpesa_stk_integration/lists"}