نحن نحاول إنشاء مركز API مصدر واحد يمكن استخدامه لتعلم معالجة API في أي لغة برمجة. يمكن للمستخدمين إنشاء محفظة النهاية الأمامية في تطبيقات الويب والهاتف المحمول باستخدام مركز API هذا.
مشروع FreeApi هو مبادرة مبتكرة ومحفوظة على المجتمع تهدف إلى تزويد المطورين واجهات برمجة التطبيقات المجانية التي يمكن الوصول إليها لمشاريعهم.
يركز المشروع على تقديم مجموعة واسعة من واجهات برمجة التطبيقات التي تلبي احتياجات مختلف المجالات والوظائف ، مما يتيح للمطورين دمج واجهات برمجة التطبيقات هذه بسلاسة في تطبيقاتهم.
تشمل أبرز الأحداث الرئيسية لمشروع Freeapi ما يلي:
إمكانية الوصول: يلتزم مشروع FreeApi بالتخلص من الحواجز من خلال توفير وصول مجاني إلى مجموعته من واجهات برمجة التطبيقات. يمكن للمطورين الاستفادة من واجهات برمجة التطبيقات هذه دون أي قيود على التكلفة ، مما يسمح لهم بتجربة تطبيقات مبتكرة وتعلمها وبناءها.
مجموعة API المتنوعة: يقدم المشروع مجموعة متنوعة وشاملة من واجهات برمجة التطبيقات التي تمتد عبر مختلف الصناعات والمجالات والوظائف. سواء كنت تحتاج إلى تكامل وسائل التواصل الاجتماعي أو بوابات الدفع أو خوارزميات التعلم الآلي أو اتصال جهاز إنترنت الأشياء ، فقد غطي مشروع FreeApi.
التكامل المبسط: يفهم مشروع FreeApi التحديات التي يواجهها المطورون عند دمج واجهات برمجة التطبيقات في تطبيقاتهم. لمعالجة هذا ، يوفر المشروع وثائق واضحة وعينات رمز و SDKs ، مما يؤدي إلى تبسيط عملية التكامل وتقليل وقت التطوير والجهد.
التنمية التي يحركها المجتمع: يعزز المشروع مجتمعًا نابضًا بالحياة وتعاونيًا للمطورين. يتم تشجيع المساهمين على مشاركة معارفهم ، والمشاركة في المناقشات ، والتعاون في المشاريع المتعلقة بآبار واجهة برمجة التطبيقات. يضمن هذا الجهد الجماعي التحسين المستمر وموثوقية واجهات برمجة التطبيقات التي يقدمها مشروع Freeapi.
التعلم وتنمية المهارات: يهدف مشروع Freeapi إلى تمكين المطورين من خلال توفير منصة للتعلم وتنمية المهارات. من خلال الوصول إلى مختلف واجهات برمجة التطبيقات والموارد التعليمية ، يمكن للمطورين تعزيز فهمهم لتكامل API وتوسيع معرفتهم وعرض خبراتهم من خلال بناء مشاريع كاملة.
بشكل عام ، يعد مشروع FreeApi موردًا قيماً للمطورين الذين يسعون إلى واجهات برمجة التطبيقات التي يمكن الوصول إليها ومتنوعة.
من خلال تعزيز مجتمع داعم ، يمكّن المشروع المطورين من تعلم وإنشاء والابتكار ، والمساهمة في نهاية المطاف في نمو مشهد تكامل API والتقدم.
تقديم مشروعنا المفتوح المصدر المفتوح المصدر ، وهو منصة ديناميكية مصممة لإحداث ثورة في طريقة تفاعل المطورين مع واجهات برمجة التطبيقات.
مع التركيز على الانفتاح وإمكانية الوصول والتعلم ، يمكّن API Hub المطورين من جميع المستويات لاستكشاف وتجربة وتنمية مهاراتهم في تكامل API.
أبرز:
المصدر المفتوح: تم بناء مركز API الخاص بنا على مبادئ المصدر المفتوح ، مما يضمن الشفافية والتعاون والتنمية التي يحركها المجتمع. هذا يعني أن الكود المصدري متاح مجانًا ، مما يسمح للمطورين بتخصيص المشروع وتوسيعه والمساهمة فيه.
مجاني للاستخدام: نحن نؤمن اعتقادا راسخا بإزالة الحواجز التي تحول دون الدخول ، وهذا هو السبب في أن مركز واجهة برمجة التطبيقات لدينا مجاني تمامًا للاستخدام. سواء كنت مطورًا متمرسًا أو مجرد بدء رحلة الترميز الخاصة بك ، يمكنك الاستفادة من منصتنا دون أي قيود على التكلفة.
المحلية أو النشر : المرونة هي في صميم مركز API الخاص بنا. لديك خيار استخدامه محليًا ، أو تشغيله على جهازك الخاص ، أو نشره على خادم ، مما يجعله في متناول الآخرين. يضمن هذا التنوع أنه يمكنك تكييف المنصة مع بيئة التطوير الخاصة بك.
مورد التعلم : تم تصميم API Hub الخاص بنا كمورد تعليمي شامل ، حيث يقدم ثروة من المواد التعليمية والدروس والوثائق. سواء كنت مبتدئًا أو تسعى إلى توسيع معرفتك في واجهة برمجة التطبيقات ، فإن منصتنا توفر الموارد التي تحتاجها للتعلم والتحسين.
نقاط النهاية المخصصة للمبتدئين : بالنسبة للمطورين على مستوى المبتدئين ، يوفر API Hub نقاط نهاية مخصصة توفر تجربة عملية في التعامل مع استجابات API. تتيح لك واجهات برمجة التطبيقات الصديقة للمبتدئين أن تتدرب على أساسيات العمل مع واجهات برمجة التطبيقات.
واجهات برمجة التطبيقات المتقدمة لبناء المحفظة : بالإضافة إلى نقاط النهاية على مستوى المبتدئين ، يوفر API Hub أيضًا واجهات برمجة التطبيقات المتقدمة لتحدي مهاراتك وتمديدها. تمكنك واجهات برمجة التطبيقات هذه من معالجة سيناريوهات التكامل الأكثر تعقيدًا ، مما يساعدك على بناء مجموعة قوية من المشاريع لعرض خبرتك.
من خلال الجمع بين مبادئ المصادر المفتوحة ، وإمكانية الوصول ، والتركيز على التعلم ، فإن مشروع API Hub الخاص بنا يمهد الطريق للمطورين أن يزدهروا في عالم تكامل API. انضم إلى مجتمعنا النابض بالحياة وشرع في رحلة مثيرة للاكتشاف والنمو والابتكار.
يتم استضافة مشروعنا مفتوح المصدر حاليًا على خادم بعيد ، حيث نضطر إلى إعادة تعيين الخادم بأكمله ، بما في ذلك نظام الملفات وقاعدة بيانات MongoDB ، كل ساعتين لتجنب تكاليف تكاليف إضافية.
تؤدي هذه العملية إلى حذف جميع الملفات/الملفات الثابتة وإعادة ضبط قاعدة البيانات بأكملها على الخادم.
فقدان البيانات: أي تغييرات تم إجراؤها خلال فترة ساعتين (على الخادم البعيد) ، بما في ذلك الصور التي تم تحميلها وبيانات المستخدم ، ستُفقد وغير قابلة للاسترداد.
انقطاع الخدمة: قد تعطل إعادة تعيين الخادم عمليات التطوير والاختبار لمدة معينة أثناء إعادة تشغيل الخادم (لمدة 1-2 دقيقة).
استخدام API المحلي: لأغراض التطوير والاختبار ، نوصي بشدة باستخدام واجهة برمجة التطبيقات محليًا على جهازك عن طريق استنساخ المشروع .
هذا يضمن أن عملك لا يتأثر بإعادة ضبط الخادم ويسمح لك بالحفاظ على بيئة تطوير مستقرة على جهازك المحلي.
الاستضافة الذاتية على السكك الحديدية (الموصى بها للمشاريع الشخصية) : لاستضافة تطبيق FreeApi.app ، يمكنك الاستفادة من قالب تم إنشاؤه مسبقًا متاحًا بسهولة. انقر هنا للحصول على مستندات مفصلة
لتشغيل مشروع Freeapi ، اتبع هذه الخطوات:
.env في المجلد الجذر ونسخ لصق محتوى .env.sample ، وإضافة بيانات الاعتماد اللازمة.docker-compose up --build --attach backend
# --build: Rebuild the image and run the containers
# --attach: only show logs of Node app container and not mongodbلتشغيل مشروع Freeapi محليًا ، اتبع هذه الخطوات:
.env في المجلد الجذر ونسخ لصق محتوى .env.sample ، وإضافة بيانات الاعتماد اللازمة.yarn installyarn startلاستضافة تطبيق FreeApi.app ، يمكنك الاستفادة من قالب تم إنشاؤه مسبقًا متاح بسهولة.
انقر فوق الزر أعلاه لزيارة Railway.App.
انقر على زر النشر الآن .
(اختياري) تسجيل الدخول مع github للنشر.
املأ تفاصيل المستودع:
بالنسبة لمتغيرات البيئة ، قدمنا بعض القيم الافتراضية في ENV لتقليل العبء ، ولكن بعض المعلمات إلزامية:
PORT : لا تقم بتغيير القيمة ، فليتم ضبطها على 8080 لعرض مستندات Swagger بعد النشر.MONGODB_URI : توفير عنوان URL لقاعدة بيانات MongoDB ATLAS. مثال على ذلك مسبقًا لك ، تحريره/تحديثه للمتابعة.NODE_ENV : تعيين الافتراضي على "التطوير" لعرض السجلات. يمكنك اختيار تغييره إلى "الإنتاج" (تأكد من إضافة نفس الكلمة بالضبط) لإخفائها.EXPRESS_SESSION_SECRET : يُنصح بتغيير القيمة الافتراضية إلى القيمة السرية الخاصة بك.ACCESS_TOKEN_SECRET : يُنصح بتغيير القيمة الافتراضية إلى القيمة السرية الخاصة بك.ACCESS_TOKEN_EXPIRY : قم بتعيين يوم واحد على أنه افتراضي.REFRESH_TOKEN_SECRET : يُنصح بتغيير القيمة الافتراضية إلى القيمة السرية الخاصة بك.REFRESH_TOKEN_EXPIRY : اضبط على 10 أيام كإعداد افتراضي.FREEAPI_HOST_URL : قم بتعيينه كـ URL للسكك الحديدية.بمجرد ملء معلمات البيئة المطلوبة ، إذا اخترت إضافة آخرين مثل PayPal و Google و Razorpay ، فيرجى متابعة بيانات الاعتماد الخاصة بك في النموذج.
انقر على زر النشر لتشغيل البناء الأول.
ملاحظة: بمجرد نشر الطلب ، يرجى الانتظار لمدة 3-5 دقائق حتى تتوفر مستندات Swagger.
لضمان الموثوقية والاستقرار لمستخدمينا النهائيين ، نستخدم الكاتب المسرحي ، وهو إطار اختبار قوي لأتمتة الاختبار عبر جميع نقاط النهاية.
تأكد من إضافة MONGO_MEMORY_SERVER_PORT=10000 (منفذ mongoDB لاختبار e2e) في ملف .env الخاص بك.
yarn start:test-serveryarn test:playwrightهذا سوف يولد تقرير الكاتب المسرحي. لعرض هذا التقرير تشغيل الأمر التالي
yarn playwright show-reportتأكد من تمرير جميع حالات الاختبار كلما قمت بأي تغييرات.
نرحب باهتمامك بالمساهمة في مشروعنا مفتوح المصدر!
للمساهمة في Freeapi ، يرجى اتباع هذه الخطوات:
git checkout -b feat/your-feature-name أو git checkout -b fix/your-bug-fix-name وقم بإجراء تغييراتك.git commit -am 'add your commit message'git push origin feat/your-feature-name .إليك دليل حول كيفية المساهمة بفعالية في مركز API الخاص بنا:
سحب طلبات لتحديثات ReadMe: يرجى الامتناع عن إرسال طلبات السحب فقط لتحديث ملف ReadMe للمشروع. على الرغم من أننا نقدر أهمية الوثائق الواضحة والموجزة ، فإننا نفضل التركيز على مساهمات التعليمات البرمجية الكبيرة وتحسينات الميزات.
تحديثات القواعد: نقود فريقنا على التواصل الفعال ، لكننا لسنا متزايدين. لا تحتاج إلى إرسال طلبات السحب فقط لإصلاحات القواعد أو تحسينات اللغة البسيطة. بدلاً من ذلك ، ركز على الوظائف الأساسية وميزات المشروع.
تجنب تحديث واجهات برمجة التطبيقات العامة الحالية: للحفاظ على الاستقرار والاتساق ، فإننا نثني التحديثات المباشرة على واجهات برمجة التطبيقات العامة الحالية داخل مركز API. تم اختبار وموافقة واجهات برمجة التطبيقات هذه بدقة. ومع ذلك ، إذا واجهت أي أخطاء أو مشكلات ، فإننا نشجعك على فتح مشكلة في تعقب إصدار مشروعنا لإخطارنا.
بناء واجهات برمجة التطبيقات الجديدة للمشروع: نشجعك على استكشاف إبداعك والمساهمة من خلال بناء واجهات برمجة تطبيقات المشروع الكاملة. يجب أن توفر واجهات برمجة التطبيقات هذه الحلول الشاملة التي يمكن أن تساعد المطورين في بناء مشاريع معقدة لعرض مهاراتهم وقدراتهم. مساهماتك في هذا المجال ستفيد المجتمع بشكل كبير.
صياغة اقتراح ومناقشة على الخلاف: قبل الغوص في مشروعك ، نوصي بصياغة اقتراح. يمكن أن يشمل ذلك خريطة ذهنية أو مخططًا لواجهة برمجة التطبيقات التي تنوي بناءها وفوائدها المحتملة. انضم إلى مجتمع Discord الخاص بنا ، حيث يمكنك مشاركة اقتراحك ومناقشة الأفكار وجمع التعليقات من زملائه المساهمين. سيؤدي الانخراط في هذه المناقشات إلى تعزيز محفظة الواجهة الخلفية الخاصة بك والمساعدة في تشكيل الاتجاه المستقبلي للمشروع.
نحن نقدر حماسك ونتطلع إلى مساهماتك القيمة في مشروع API API مفتوح المصدر.
معًا ، يمكننا تعزيز بيئة تعاونية وإحداث تأثير كبير في مشهد تكامل API.
انقر هنا للحصول على دليل مساهمة مفصلة.
شكرًا لك على اهتمامك بالمساهمة في مشروع Freeapi من خلال إنشاء تطبيقات واجهة تستهلك Freeapis! تلعب جهودك دورًا حاسمًا في تعزيز تجربة المستخدم وتوسيع نطاق واجهات برمجة التطبيقات الخاصة بنا. يرجى اتباع هذا الدليل لضمان عملية مساهمة سلسة وتعاونية.
انقر هنا للحصول على دليل مساهمة مفصل لمطوري الواجهة!
شكرًا لك على اهتمامك بالمساهمة في مشروع FreeApi لزيادة تغطية الكود لخدمة API الخاصة بنا والتي تساعدنا على شحن نقاط نهاية قوية يتم اختبارها في ساحة المعركة. يرجى اتباع هذا الدليل لضمان عملية مساهمة سلسة وتعاونية.
انقر هنا للحصول على دليل مساهمة مفصل لزيادة تغطية الكود.
مستندات Swagger: https://api.freeapi.app
ملاحظة: يتم إنشاء مستندات Swagger تلقائيًا من ملف swagger.yaml . أثناء تشغيل المشروع محليًا ، تأكد من تغيير عنوان URL إلى http://localhost:<port_from_.env>/api/v1 في حقل مستندات Swagger servers/url .