{"id":15188519,"url":"https://github.com/alimanian/pezhvaak","last_synced_at":"2026-01-30T01:31:22.730Z","repository":{"id":254785352,"uuid":"845006780","full_name":"alimanian/Pezhvaak","owner":"alimanian","description":"Pezhvaak is a social media API platform that offers user, post, comment, like, and follow functionalities using modern web technologies and RESTful principles.","archived":false,"fork":false,"pushed_at":"2024-09-02T14:39:07.000Z","size":112,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-10T04:52:10.640Z","etag":null,"topics":["laravel","laravel-framework","php","rest","rest-api"],"latest_commit_sha":null,"homepage":"","language":"PHP","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/alimanian.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}},"created_at":"2024-08-20T11:59:18.000Z","updated_at":"2024-09-02T14:39:11.000Z","dependencies_parsed_at":"2024-09-23T16:00:35.242Z","dependency_job_id":null,"html_url":"https://github.com/alimanian/Pezhvaak","commit_stats":{"total_commits":20,"total_committers":1,"mean_commits":20.0,"dds":0.0,"last_synced_commit":"5e4b3dc52bee49e57e2d46ef520348b6ee1f58bf"},"previous_names":["alimanian/pezhvaak"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alimanian%2FPezhvaak","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alimanian%2FPezhvaak/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alimanian%2FPezhvaak/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alimanian%2FPezhvaak/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alimanian","download_url":"https://codeload.github.com/alimanian/Pezhvaak/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240987721,"owners_count":19889388,"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":["laravel","laravel-framework","php","rest","rest-api"],"created_at":"2024-09-27T19:21:41.813Z","updated_at":"2026-01-30T01:31:22.689Z","avatar_url":"https://github.com/alimanian.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":".\n\u003cdetails\u003e\n\u003csummary\u003eنسخه فارسی (کلیک کنید)\u003c/summary\u003e\n\n# 🚀 پروژه API لاراول پژواک\n\nاین پروژه یک API مبتنی بر Laravel برای پژواک است، یک پلتفرم رسانه اجتماعی که به کاربران امکان می‌دهد پست ایجاد کنند، نظر دهند، لایک کنند و کاربران دیگر را دنبال کنند.\n\n## 📋 پیش‌نیازها\n\n- PHP \u003e= 8.2\n- Composer\n- MySQL (یا هر پایگاه داده‌ای که Laravel پشتیبانی می‌کند)\n\n## 🛠️ نصب و راه‌اندازی\n\n1. کلون کردن مخزن:\n   ```\n   git clone https://github.com/alimanian/pezhvaak.git\n   ```\n\n2. نصب وابستگی‌ها:\n   ```\n   composer install\n   ```\n\n3. کپی کردن `.env.example` به `.env` و پیکربندی متغیرهای محیطی:\n   ```\n   cp .env.example .env\n   ```\n\n4. تنظیم اطلاعات دیتابیس در فایل `.env`:\n   اطلاعات ورود به دیتابیس و نام دیتابیس را در فایل `.env` تنظیم کنید. مثال:\n   ```\n   DB_CONNECTION=mysql\n   DB_HOST=127.0.0.1\n   DB_PORT=3306\n   DB_DATABASE=pezhvaak\n   DB_USERNAME=root\n   DB_PASSWORD=\n   ```\n\n5. تولید کلید برنامه:\n   ```\n   php artisan key:generate\n   ```\n\n6. اجرای مایگریشن‌ها و سیدرها:\n   ```\n   php artisan migrate --seed\n   ```\n\n7. شروع سرور توسعه:\n   ```\n   php artisan serve\n   ```\n\n## 📚 مستندات API\n\n### 📌 نمای کلی\n- URL پایه: `http://pezhvaak.test/api`\n- احراز هویت: توکن Bearer (برای اکثر نقاط پایانی مورد نیاز است)\n\n### 🔐 نقاط پایانی احراز هویت\n\n| نقطه پایانی | متد | پارامترها | توضیحات |\n|-------------|------|-----------|---------|\n| `/register` | POST | `name`, `email`, `password` | ایجاد حساب کاربری جدید |\n| `/login` | POST | `email`, `password` | احراز هویت و دریافت توکن API |\n\n### 👤 نقاط پایانی کاربر\n\n| نقطه پایانی | متد | نیاز به احراز هویت | پارامترها | توضیحات |\n|-------------|------|---------------------|-----------|---------|\n| `/v1/users/` | GET | خیر | - | دریافت همه کاربران |\n| `/v1/users/{user_id}/posts` | GET | خیر | `user_id` (مسیر) | دریافت پست‌های کاربر |\n| `/v1/users/{user_id}/comments` | GET | خیر | `user_id` (مسیر) | دریافت نظرات کاربر |\n| `/v1/users/{user_id}/likes` | GET | خیر | `user_id` (مسیر) | دریافت لایک‌های کاربر |\n| `/v1/users/{user_id}/followers` | GET | خیر | `user_id` (مسیر) | دریافت دنبال‌کنندگان کاربر |\n| `/v1/users/{user_id}/following` | GET | خیر | `user_id` (مسیر) | دریافت کاربرانی که کاربر دنبال می‌کند |\n| `/v1/users/{user_id}/follow` | POST | بله | `user_id` (مسیر) | دنبال کردن کاربر |\n| `/v1/users/{user_id}/unfollow` | DELETE | بله | `user_id` (مسیر) | لغو دنبال کردن کاربر |\n\n### 📝 نقاط پایانی پست\n\n| نقطه پایانی | متد | نیاز به احراز هویت | پارامترها | توضیحات |\n|-------------|------|---------------------|-----------|---------|\n| `/v1/posts` | GET | خیر | - | دریافت همه پست‌ها |\n| `/v1/posts/{post_id}` | GET | خیر | `post_id` (مسیر) | دریافت پست با شناسه |\n| `/v1/posts` | POST | بله | `content`, `attachments[]` (اختیاری) | ایجاد پست |\n| `/v1/posts/{post_id}` | PUT | بله | `post_id` (مسیر), `content` | به‌روزرسانی پست |\n| `/v1/posts/{post_id}` | DELETE | بله | `post_id` (مسیر) | حذف پست |\n\n### 💬 نقاط پایانی نظر\n\n| نقطه پایانی | متد | نیاز به احراز هویت | پارامترها | توضیحات |\n|-------------|------|---------------------|-----------|---------|\n| `/v1/comments` | POST | بله | `content`, `post_id` | ایجاد نظر |\n| `/v1/comments/{comment_id}` | DELETE | بله | `comment_id` (مسیر) | حذف نظر |\n\n### ❤️ نقاط پایانی لایک\n\n| نقطه پایانی | متد | نیاز به احراز هویت | پارامترها | توضیحات |\n|-------------|------|---------------------|-----------|---------|\n| `/v1/likes` | POST | بله | `post_id` | ایجاد لایک |\n| `/v1/likes/{like_id}` | DELETE | بله | `like_id` (مسیر) | حذف لایک |\n\n### ℹ️ اطلاعات اضافی\n\n1. **مدیریت خطا**: تمام نقاط پایانی پاسخ‌های JSON را برمی‌گردانند. در صورت بروز خطا، پاسخ شامل پیام خطا و کد وضعیت HTTP مناسب خواهد بود.\n\n2. **محدودیت نرخ**: اطلاعات مربوط به محدودیت نرخ در مشخصات فعلی API ارائه نشده است. لطفاً برای جزئیات سیاست‌های محدودیت نرخ با ارائه‌دهنده API تماس بگیرید.\n\n3. **هدرهای درخواست**:\n    - برای درخواست‌های احراز هویت شده، توکن Bearer را در هدر Authorization قرار دهید.\n    - برای تمام فراخوانی‌های API، `Accept: application/json` را در هدرهای درخواست تنظیم کنید.\n\n4. **فرمت پاسخ**: تمام پاسخ‌های موفق در قالب JSON خواهند بود.\n\n5. **صفحه‌بندی**: در صورت پیاده‌سازی، جزئیات مربوط به صفحه‌بندی (مانند اندازه صفحه، لینک‌های صفحه بعدی/قبلی) باید در پاسخ برای نقاط پایانی که چندین مورد را برمی‌گردانند، گنجانده شود.\n\n6. **نسخه‌بندی**: نسخه فعلی API v1 است، همانطور که از مسیرهای نقطه پایانی مشخص است.\n\n7. **پارامترهای مسیر**: پارامترهایی که با (مسیر) مشخص شده‌اند، بخشی از مسیر URL هستند و باید هنگام ارسال درخواست‌ها با مقادیر واقعی جایگزین شوند.\n\nتوجه: برای اطلاعات دقیق‌تر در مورد نمونه‌های درخواست/پاسخ، کدهای خطای خاص و راهنمای استفاده، لطفاً به مستندات کامل API مراجعه کنید یا با ارائه‌دهنده API تماس بگیرید.\n\n## 📮 کالکشن Postman\n\nبرای سهولت در تست و استفاده از API، یک فایل کالکشن Postman با نام `pezhvaak.postman_collection.json` در دایرکتوری اصلی پروژه قرار داده شده است. شما می‌توانید این فایل را در Postman وارد کرده و به راحتی API را تست کنید.\n\n### راهنمای استفاده از کالکشن Postman:\n\n1. فایل `pezhvaak.postman_collection.json` را در Postman وارد کنید.\n2. در Postman، به بخش `Pezhvaak` بروید و سپس قسمت `Variables` را باز کنید.\n3. مقدار `base_url` را در هر دو فیلد `INITIAL VALUE` و `CURRENT VALUE` تنظیم کنید (معمولاً `http://localhost:8000/api`).\n4. یک درخواست `/login` ارسال کنید تا توکن دریافت کنید.\n5. توکن دریافت شده را در بخش `Variables` در `Pezhvaak` برای متغیر `token` در هر دو فیلد `INITIAL VALUE` و `CURRENT VALUE` قرار دهید.\n6. اکنون می‌توانید از API‌های مختلف استفاده کنید.\n\n\n## 🤝 مشارکت\n\nلطفاً قبل از مشارکت در این پروژه با ما تماس بگیرید. شما می‌توانید با ایجاد یک issue یا ارسال یک pull request مشارکت کنید.\n\n## 📄 مجوز\n\nاین پروژه تحت مجوز [نام مجوز] منتشر شده است. برای جزئیات بیشتر، فایل LICENSE را مشاهده کنید.\n\n\u003c/details\u003e\n\n# 🚀 Pezhvaak Laravel API Project\n\n\u003cdetails open\u003e\n\u003csummary\u003eEnglish Version (Click to collapse)\u003c/summary\u003e\n\nThis project is a Laravel-based API for Pezhvaak, a social media platform allowing users to create posts, comment, like, and follow other users.\n\n## 📋 Prerequisites\n\n- PHP \u003e= 8.2\n- Composer\n- MySQL (or any database supported by Laravel)\n\n## 🛠️ Installation and Setup\n\n1. Clone the repository:\n   ```\n   git clone https://github.com/alimanian/pezhvaak.git\n   ```\n\n2. Install dependencies:\n   ```\n   composer install\n   ```\n\n3. Copy `.env.example` to `.env` and configure environment variables:\n   ```\n   cp .env.example .env\n   ```\n\n4. Set up database information in the `.env` file:\n   Configure your database credentials and database name in the `.env` file. For example:\n   ```\n   DB_CONNECTION=mysql\n   DB_HOST=127.0.0.1\n   DB_PORT=3306\n   DB_DATABASE=pezhvaak\n   DB_USERNAME=root\n   DB_PASSWORD=\n   ```\n\n5. Generate application key:\n   ```\n   php artisan key:generate\n   ```\n\n6. Run migrations and seeders:\n   ```\n   php artisan migrate --seed\n   ```\n\n7. Start the development server:\n   ```\n   php artisan serve\n   ```\n\n## 📚 API Documentation\n\n### 📌 Overview\n- Base URL: `http://pezhvaak.test/api`\n- Authentication: Bearer Token (required for most endpoints)\n\n### 🔐 Authentication Endpoints\n\n| Endpoint | Method | Parameters | Description |\n|----------|--------|------------|-------------|\n| `/register` | POST | `name`, `email`, `password` | Create a new user account |\n| `/login` | POST | `email`, `password` | Authenticate and receive API token |\n\n### 👤 User Endpoints\n\n| Endpoint | Method | Auth Required | Parameters | Description |\n|----------|--------|---------------|------------|-------------|\n| `/v1/users/` | GET | No | - | Get all users |\n| `/v1/users/{user_id}/posts` | GET | No | `user_id` (path) | Get user posts |\n| `/v1/users/{user_id}/comments` | GET | No | `user_id` (path) | Get user comments |\n| `/v1/users/{user_id}/likes` | GET | No | `user_id` (path) | Get user likes |\n| `/v1/users/{user_id}/followers` | GET | No | `user_id` (path) | Get user followers |\n| `/v1/users/{user_id}/following` | GET | No | `user_id` (path) | Get user following |\n| `/v1/users/{user_id}/follow` | POST | Yes | `user_id` (path) | Follow user |\n| `/v1/users/{user_id}/unfollow` | DELETE | Yes | `user_id` (path) | Unfollow user |\n\n### 📝 Post Endpoints\n\n| Endpoint | Method | Auth Required | Parameters | Description |\n|----------|--------|---------------|------------|-------------|\n| `/v1/posts` | GET | No | - | Get all posts |\n| `/v1/posts/{post_id}` | GET | No | `post_id` (path) | Get post by ID |\n| `/v1/posts` | POST | Yes | `content`, `attachments[]` (optional) | Create post |\n| `/v1/posts/{post_id}` | PUT | Yes | `post_id` (path), `content` | Update post |\n| `/v1/posts/{post_id}` | DELETE | Yes | `post_id` (path) | Delete post |\n\n### 💬 Comment Endpoints\n\n| Endpoint | Method | Auth Required | Parameters | Description |\n|----------|--------|---------------|------------|-------------|\n| `/v1/comments` | POST | Yes | `content`, `post_id` | Create comment |\n| `/v1/comments/{comment_id}` | DELETE | Yes | `comment_id` (path) | Delete comment |\n\n### ❤️ Like Endpoints\n\n| Endpoint | Method | Auth Required | Parameters | Description |\n|----------|--------|---------------|------------|-------------|\n| `/v1/likes` | POST | Yes | `post_id` | Create like |\n| `/v1/likes/{like_id}` | DELETE | Yes | `like_id` (path) | Delete like |\n\n### ℹ️ Additional Information\n\n1. **Error Handling**: All endpoints return JSON responses. In case of an error, the response will include an error message and appropriate HTTP status code.\n\n2. **Rate Limiting**: Information about rate limiting is not provided in the current API specification. Please contact the API provider for details on rate limiting policies.\n\n3. **Request Headers**:\n    - For authenticated requests, include the Bearer token in the Authorization header.\n    - Set `Accept: application/json` in the request headers for all API calls.\n\n4. **Response Format**: All successful responses will be in JSON format.\n\n5. **Pagination**: If implemented, details about pagination (e.g., page size, next/previous page links) should be included in the response for endpoints that return multiple items.\n\n6. **Versioning**: The current API version is v1, as evident from the endpoint paths.\n\n7. **Path Parameters**: Parameters marked with (path) are part of the URL path\n\n## 📮 Postman Collection\n\nFor ease of testing and using the API, a Postman collection file named `pezhvaak.postman_collection.json` is provided in the root directory of the project. You can import this file into Postman and easily test the API.\n\n### Guide to using the Postman collection:\n\n1. Import the `pezhvaak.postman_collection.json` file into Postman.\n2. In Postman, go to the `Pezhvaak` section and then open the `Variables` tab.\n3. Set the `base_url` value in both the `INITIAL VALUE` and `CURRENT VALUE` fields (typically `http://localhost:8000/api`).\n4. Send a `/login` request to receive a token.\n5. Place the received token in the `Variables` section under `Pezhvaak` for the `token` variable in both `INITIAL VALUE` and `CURRENT VALUE` fields.\n6. You can now use the various APIs.\n\n## 🤝 Contributing\n\nPlease contact us before contributing to this project. You can contribute by creating an issue or submitting a pull request.\n\n## 📄 License\n\nThis project is licensed under the [License Name]. See the LICENSE file for details.\n\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falimanian%2Fpezhvaak","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falimanian%2Fpezhvaak","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falimanian%2Fpezhvaak/lists"}