Crypto API Hub Page
نمای کلی
این صفحه یک داشبورد جامع برای مدیریت و تست 74+ سرویس API کریپتو است.
ویژگیها
1. نمایش سرویسها
- 74+ سرویس API در 5 دسته:
- 🔗 Explorer: Etherscan, BscScan, TronScan, و غیره
- 📊 Market: CoinGecko, CoinMarketCap, Binance, و غیره
- 📰 News: CryptoPanic, NewsAPI, CoinDesk, و غیره
- 💭 Sentiment: Fear & Greed, LunarCrush, Santiment
- 📈 Analytics: Whale Alert, Nansen, Glassnode, و غیره
2. جستجو و فیلتر
- جستجوی زنده در نام سرویسها، URLها و اندپوینتها
- فیلتر سریع بر اساس دستهبندی
- نمایش تعداد اندپوینتها و وضعیت کلید API
3. تستر API داخلی
- پشتیبانی از متدهای HTTP: GET, POST, PUT, DELETE
- امکان افزودن Headers سفارشی
- امکان ارسال Body برای POST/PUT
- نمایش Response به صورت JSON فرمت شده
- مدیریت خطاهای CORS
4. عملیات سریع
- Copy: کپی سریع URL اندپوینت
- Test: باز کردن تستر با URL از پیش پر شده
- Export: دانلود تمام دادهها به صورت JSON
ساختار فایلها
crypto-api-hub/
├── index.html # صفحه اصلی با ساختار یکپارچه
├── crypto-api-hub.css # استایلهای اختصاصی
├── crypto-api-hub.js # منطق و دادههای سرویسها
└── README.md # این فایل
استفاده
جستجو
- در کادر جستجو تایپ کنید
- نتایج به صورت زنده فیلتر میشوند
- میتوانید نام سرویس، URL یا اندپوینت را جستجو کنید
فیلتر بر اساس دسته
- روی یکی از تبهای بالا کلیک کنید:
- All (همه)
- Explorers
- Market
- News
- Sentiment
- Analytics
- فقط سرویسهای آن دسته نمایش داده میشوند
تست اندپوینت
- روی دکمه "Test" در کنار هر اندپوینت کلیک کنید
- مودال تستر باز میشود با URL از پیش پر شده
- در صورت نیاز Headers یا Body اضافه کنید
- روی "Send Request" کلیک کنید
- Response در پایین نمایش داده میشود
کپی URL
- روی دکمه "Copy" کلیک کنید
- URL به کلیپبورد کپی میشود
- یک Toast notification نمایش داده میشود
Export دادهها
- روی دکمه "Export" در بالای صفحه کلیک کنید
- یک فایل JSON شامل تمام سرویسها دانلود میشود
- فایل شامل metadata و تمام اطلاعات سرویسها است
دادههای سرویس
هر سرویس شامل:
{
name: "نام سرویس",
url: "URL پایه",
key: "کلید API (در صورت وجود)",
endpoints: [
"لیست اندپوینتها"
]
}
افزودن سرویس جدید
برای افزودن سرویس جدید، فایل crypto-api-hub.js را ویرایش کنید:
const SERVICES = {
// دسته موجود
market: [
// سرویسهای موجود...
// سرویس جدید
{
name: "New Service",
url: "https://api.newservice.com",
key: "YOUR_API_KEY", // یا "" اگر نیاز به کلید ندارد
endpoints: [
"/endpoint1",
"/endpoint2?param={value}"
]
}
]
};
استایلها
صفحه از design system یکپارچه استفاده میکند:
رنگها
- از متغیرهای CSS در
design-system.css - گرادیانتهای رنگی برای هر کارت
- رنگهای semantic برای وضعیتها
انیمیشنها
- Hover effects روی کارتها
- Slide up برای مودال
- Fade in برای toast notifications
- Transform برای دکمهها
Responsive
- Grid layout خودکار برای کارتها
- تنظیمات ویژه برای موبایل و تبلت
- Stack شدن المانها در صفحات کوچک
API Reference
Functions
renderServices()
رندر کردن تمام سرویسها بر اساس فیلتر فعلی
handleSearch(e)
مدیریت جستجوی زنده
handleFilterChange(tab)
تغییر فیلتر دستهبندی
openModal()
باز کردن مودال تستر API
closeModal()
بستن مودال تستر API
sendRequest()
ارسال درخواست HTTP به API
copyEndpoint(text)
کپی کردن متن به کلیپبورد
testEndpoint(url, key)
باز کردن تستر با URL مشخص
exportJSON()
دانلود تمام دادهها به صورت JSON
نکات مهم
CORS
بسیاری از APIها CORS را محدود کردهاند، بنابراین ممکن است تست مستقیم از مرورگر کار نکند. در این صورت:
- از Postman یا curl استفاده کنید
- یا از یک proxy server استفاده کنید
- یا API را از سمت سرور فراخوانی کنید
API Keys
کلیدهای API در کد قرار دارند فقط برای نمایش و تست. در production:
- کلیدها را در متغیرهای محیطی ذخیره کنید
- از سمت سرور API را فراخوانی کنید
- هرگز کلیدها را در کد frontend قرار ندهید
Rate Limiting
APIهای رایگان معمولاً محدودیت تعداد درخواست دارند. مراقب باشید که:
- خیلی سریع درخواست نفرستید
- از caching استفاده کنید
- Rate limits هر API را بررسی کنید
مشارکت
برای افزودن سرویس جدید یا بهبود صفحه:
- فایل
crypto-api-hub.jsرا ویرایش کنید - سرویس جدید را به دسته مناسب اضافه کنید
- اطلاعات کامل (name, url, key, endpoints) را وارد کنید
- تست کنید که همه چیز کار میکند
- آمار در بالای صفحه خودکار بهروز میشود
لایسنس
این پروژه بخشی از Crypto Monitor ULTIMATE است.
نسخه: 1.0.0
آخرین بهروزرسانی: 27 نوامبر 2025
وضعیت: ✅ Production Ready