{"id":26341006,"url":"https://github.com/realchaula/pixora_api","last_synced_at":"2025-07-20T22:33:37.562Z","repository":{"id":282523873,"uuid":"946205737","full_name":"RealChAuLa/pixora_API","owner":"RealChAuLa","description":"API for pixora ","archived":false,"fork":false,"pushed_at":"2025-05-18T05:29:50.000Z","size":29,"stargazers_count":15,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-18T06:27:11.265Z","etag":null,"topics":["fastapi","python"],"latest_commit_sha":null,"homepage":"","language":"Python","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/RealChAuLa.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-03-10T19:24:11.000Z","updated_at":"2025-05-18T05:29:53.000Z","dependencies_parsed_at":"2025-05-03T18:26:37.128Z","dependency_job_id":"42914756-ee13-4b8d-959e-6aac5dd757ab","html_url":"https://github.com/RealChAuLa/pixora_API","commit_stats":null,"previous_names":["realchaula/pixora_api"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/RealChAuLa/pixora_API","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RealChAuLa%2Fpixora_API","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RealChAuLa%2Fpixora_API/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RealChAuLa%2Fpixora_API/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RealChAuLa%2Fpixora_API/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RealChAuLa","download_url":"https://codeload.github.com/RealChAuLa/pixora_API/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RealChAuLa%2Fpixora_API/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266210835,"owners_count":23893337,"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":["fastapi","python"],"created_at":"2025-03-16T04:28:30.703Z","updated_at":"2025-07-20T22:33:37.558Z","avatar_url":"https://github.com/RealChAuLa.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pixora API\n\nA FastAPI application that provides authentication and user management functionality with MongoDB integration.\n\n## Features\n\n- User Authentication\n  - Sign up with email and password\n  - Login with JWT authentication\n  - Password hashing for security\n- User Management\n  - User profile retrieval\n  - Protected endpoints using JWT\n- MongoDB Integration\n  - Connects to MongoDB Atlas cluster\n  - Stores user data securely\n\n## Technologies Used\n\n- FastAPI: Modern, fast web framework for building APIs\n- MongoDB: NoSQL database for storing user data\n- Motor: Asynchronous MongoDB driver for Python\n- PyJWT: JSON Web Token implementation for Python\n- Pydantic v2: Data validation and settings management\n- Passlib \u0026 Bcrypt: Password hashing\n\n## Project Structure\n\nproject/ │ ├── .env ├── main.py ├── requirements.txt │ ├── app/ │ ├── init.py │ ├── database.py │ │ │ ├── models/ │ │ ├── init.py │ │ └── user_model.py │ │ │ ├── auth/ │ │ ├── init.py │ │ ├── routes.py │ │ ├── jwt_handler.py │ │ └── password_handler.py │ │ │ └── user/ │ ├── init.py │ ├── routes.py │ └── utils.py\n\n\n## API Endpoints\n\n### Authentication\n\n- **POST** `/api/auth/signup` - Register a new user\n  - Body Parameters:\n    - `first_name` (string): User's first name\n    - `last_name` (string): User's last name\n    - `email` (string): User's email\n    - `password` (string): User's password (with validation rules)\n    - `contact` (string): User's phone number\n    - `birthday` (string): User's birthday (YYYY-MM-DD)\n  - Returns: Success message with user ID\n\n- **POST** `/api/auth/login` - Authenticate a user\n  - Form Parameters:\n    - `username` (string): User's email\n    - `password` (string): User's password\n  - Returns: JWT access token\n\n### User Management\n\n- **GET** `/api/users/me` - Get current user details\n  - Headers: Bearer token\n  - Returns: User profile data\n\n- **GET** `/api/users/{user_id}` - Get user by ID\n  - Headers: Bearer token\n  - Returns: User profile data (only if requesting own profile)\n\n## Setup and Installation\n\n1. Clone the repository\n2. Create a virtual environment:\n3. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frealchaula%2Fpixora_api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frealchaula%2Fpixora_api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frealchaula%2Fpixora_api/lists"}