Code Monkey home page Code Monkey logo

holderbot's Introduction

Example Image

English | Русский | فارسی

What is Holderbot?

Holder Bot is a quick and simple bot designed to address the issue of the lack of a timer start option after the initial connection in the "Marzban Panel" user interface. Utilizing the programming interfaces of Marzban Panel, Holder Bot provided users with the ability to easily utilize this feature on Telegram. However, after the 3.0 update, Holder Bot has enhanced its capabilities with the introduction of special features, reaching its peak in subsequent versions. Now, Holder Bot serves as a professional assistant for Marzban users. For more information, you can refer to the update section or join the Telegram channel.

Important

You can show your support by giving a star to this project on GitHub. We have created a Telegram channel for announcements, surveys, and interaction with users. You can join us via @Erfjabs.

Why Holderbot?

  • Ability to automatically configs upon reaching the limit of volume or time.
  • Ability to manage panel admins (change password or sudo)
  • Ability to add or remove admins for the panel
  • Ability to determine the node consumption coefficient
  • Ability to manage nodes (deactivate/activate/reconnect)
  • Ability to monitor and receive notifications of node disconnections
  • Ability to deactivate/activate monitoring
  • Ability to change the monitoring timer for nodes
  • Ability to create users in bulk/individually (on_hold)
  • Ability to create users via templates
  • Ability to create templates (volume, time, inbounds)
  • Ability to get the last online time, sub-user update (individual)
  • Ability to directly receive barcode and sub-link text or delete user
  • Ability to receive the software used by the user
  • Ability to receive a barcode for a desired sent link
  • Ability to search and get similar users (like Google's Did you Mean)
  • Ability to get a list of online/offline users
  • (from 1 minute to the last 60 days in table and PDF format)
  • Ability to get a list of updated/not updated sub-users
  • (from 1 minute to the last 60 days in table and PDF format)
  • New sleek and simple user interface.

Note

We are constantly working on new updates. Do you have any ideas or suggestions? Please raise them as issues, and we will consider adding them in future updates.

How to install Holderbot?

To use the holderbot , you will need the following information:

  1. Name: You can enter any name you prefer.
  2. Chat ID: You need to obtain this from the @chatIDrobot.
  3. Bot Token: You need to obtain this from the @botfather.
  4. Panel Username: Enter your panel sudo admin username.
  5. Panel Password: Enter your panel sudo admin password.
  6. Panel Domain: Enter your panel domain in this format (sub.domain.com:port).

Warning

Please note that HolderBot is currently only supported for installation and use on Ubuntu servers, and any responsibility for other setups is your own.

Please use the following command to install on your server:

install

sudo bash -c "$(curl -sL https://github.com/erfjab/holderbot/raw/main/holderbot.sh)"

restart

sudo bash -c "$(curl -sL https://github.com/erfjab/holderbot/raw/main/restart.sh)"

uninstall

sudo bash -c "$(curl -sL https://github.com/erfjab/holderbot/raw/main/uninstall.sh)"

How to use the bot? (video)

click me

All explanations are complete and clear, but if you still notice any deficiencies or shortcomings in the explanations, please create an issue, and we will address it. Thank you for your cooperation.

Warning

These tutorials are exclusively for version 4. Previous versions are no longer supported.

🏛 Home Page

about the homepage, you'll find all the necessary commands listed, with detailed explanations provided further down the page. Here, besides entering commands, you can also send the username or link of your subscription. If the user exists, you'll receive their statistics, and if they don't , with Holder Bot's search feature to receive a list of similar users.

When user statistics are sent to you, you'll see three options: "Update," "Qrcode," and "Delete." To update the user's statistics, use the "Update" button. To receive the barcode for the user's subscription link, use the "Barcode" button. And to delete the user, use the "Delete" button.

Note

Don't worry, before carrying out the deletion operation, you will be asked for confirmation.

🚀 Create User

You have two options for creating a user: either through templates or manually. You can create ready-made templates by referring to the 'templates' section in this tutorial and creating your templates. When creating a user, if you click on one of your templates, the inbounds, volume, and time are pre-selected, and you will be asked for your username and the desired number. The bot automatically numbers the usernames and creates the users.

If you want to do this manually, you will be asked for inbounds, volume, and time, which is more suitable for specific cases. Templates speed up your work and allow you to create hundreds of users in a fraction of a second.

🎖 Notice

Welcome to the Messages section! This feature has been added with sponsorship the Gray collection.❤️ You can visit the Gray collection channel and bot for purchasing servers on an hourly and monthly basis, with a wide variety of locations and specifications, accompanied by clean IPs at the lowest prices. Before activating the Notice, you need to create an inbound Shadowsocks with the name "Holderbot" inside the panel:

{
  "tag": "Holderbot",
  "listen": "0.0.0.0",
  "port": 2222,
  "protocol": "shadowsocks",
  "settings": {
    "clients": [],
    "network": "tcp,udp"
  }
}

Then, inside the host settings of the inbound, we put our desired messages. After applying the changes, inside the Holderbot, we click on the "Change Status" option in the Notice section, and this feature becomes active. Holderbot checks users every 5 seconds and activates the messages for completed users, notifying you accordingly.

👤 Users

In the Users section, you receive general statistics of your panel. The number of users "all," "activated," "disabled," "on_hold," "limited," and "expired," along with the count of users who were online or offline in the last 24 hours, and whether their links have been updated or not, are provided.

Below, you'll find options where clicking on them will provide you with a list of user names in PDF format. If you click on the last two options, you'll be prompted for your desired timeframe, and based on that, you'll receive the statistics.

Tip

If you have a specific timeframe in mind, you can enter it based on the pattern 'time min/hour/day'.

👨🏻‍💻 Admins

You can fully manage the panel admins in this section. You can add admins, remove admins, change admin passwords, and modify admin permissions. Just note that for removing sudo admins, it can only be done from the master server using the CLI command. APIs do not allow us access to this capability.

🎗 Nodes

You can also manage your servers here, reconnect, deactivate, activate, or set the consumption coefficient for your desired server. For monitoring and receiving server disconnection notifications, refer to the monitoring section on this page.

🗃 Templates

By creating templates, you can easily manage repetitive tasks, such as specifying volume, duration, and inbounds. In the templates section, you can create a new template or delete existing ones. To create a new template, simply click on "➕ Add new template." In the first step, enter the name without spaces, numbers, or icons. Then enter the volume (in gigabytes) and duration (in days), and finally select the inbounds. Each selected inbound marked with ➕ is included, while those marked with ➖ are not. After completing your selection, click "✅ finish" to save the template. To delete a template, simply click on it, and you'll be asked for confirmation. Once confirmed, it will be deleted.

Note

You add/remove templates in this section, but you only use them in the "🚀 Create User" section.

🎛 Monitoring

Monitoring for your servers is enabled by default during the installation of HolderBot. You can enable/disable it from this section. You can also set the server check interval for monitoring and specify the waiting time for the next check when receiving a server disconnection notification.

🔍 Search

Sometimes you may not remember the username completely but want to input a few letters for the bot to find it easily and tell you. Is this what you mean? This capability is specifically designed for searches of this nature, where the bot can list the usernames similar to your input and send them to you.

Note

This section is not for receiving user statistics. For that purpose, you can refer to the homepage tutorial.

💬 Help

A guide on solving problems, requesting assistance, reporting bugs, contacting the developer, and similar matters will be sent to you. Additionally, a file containing Holder Bot logs will be sent to you, which you can share with the developer if needed for debugging and problem-solving.

🖼 QR Code

You can receive its barcode by sending any link or text. This feature is not exclusive to v2ray links, and it can provide you with its barcode in code form for any received link. It's quick and simple!

Tip

You can modify the barcode color in the "qr.py" file in the "Function" folder using line 8 (fill_color) with options like red, pink, blue, yellow.

Telegram Badge

Star History Chart

holderbot's People

Contributors

erfjab avatar leokeuo avatar mikeesierrah avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

holderbot's Issues

مشکل در فایل نصب

چند بار اقدام به نصب کردم و هر دفعه با خطا روبرو شدم.
پس از بررسی فایل holderbot.sh متوجه شدم در انتهای فایل موقع وارد کردن مقادیر chatid و token در جدول bot از " استفاده شده است و باید با ' جایگزین شود.
سپاس از زحمات شما

نیومدن نوتیف هنگام تغییرات

سلام، دستت درد نکنه بابت این پروژه
منتهی تا جایی که من می‌دونم امکاناتی مثل نوتیف هنگام ایجاد، تغییر، حذف کاربرا یا بکاپ گیری از بات توی فیچراش نیست درسته؟

اگه مایل به همکاری بودی می‌تونی به تلگرامم پیام بدی

گزارش کاربر

متن گزارشی که از یک کاربر بما میده عین یه متن پشت سرهم میده و خواندنش یخورده سخته

اینطوری :
نام کاربری : KinG (فعال)حجم مانده : 49.81 گیگروز مانده : 29 روزتاریخ انقضاء : 1402/12/14آخرین تایم آنلاینی : 13 ثانیه پیشآخرین آپدیت ساب : 59 دقیقه پیش

اگه امکانش هست هر مشخصه ای تو یه خط باشه که خوانا تر باشه و ترجیحا با یه آیکونی چیزی

یوزر اکتیو

با توجه به اینکه استفاده از این ربات خیلی راحت تر از استفاده از پنل می باشد، لذا قابلیتی اضافه گردد که بتوان انتخاب کرد یوزر active باشد یا onhold.

انتخاب پروتکل های موجود

درود
من تست کردم و جواب داد
یه موردی هست اینکه من پروتکل vless و trojan دارم اما فقط پروتکل vless رو برای کاربر اضافه میکنه
در صورتیکه باید هر 2 پروتکل رو انتخاب کنه
امکانش ویرایش بهتر هست توی همین نسخه باشه
این مرود اصلاح بشه عالی و اینکه اگر بشه این ویژگی رو در خود پنل مرزبان باشه خیلی بهتره

تاخیر در ارسال لاگ یوزر های آنلاین

درود
اول از همه تشکر بابت بات👌🙏
ارسال لاگ یوزر های آنلاین اخیر; با تاخیر انجام میشه.
بعضی وقتا همون لحظه میرفرسته بعضی وقتا با 5 دقیقه تاخیر میفرسته.
حالا نمیدونم مشکل از سمت منه یا ربات
سروری که بات روش نصبه پرومو آیزاست
دیتابیس پنل sqllite

مشکل

با سلام خدمت عرفان عزیز
یه چند مورد هست که در نسخه ی قبلی بتا هم بود نسخه ی جدید هم کما کما کن وجود داره..
بخش سرچ بهینه سازی انجام شده اما احساس من بر این هست که بات اینبار برای پیدا کردن خیلی دقیقتر باید کلامت را برایش ادا کرد درصورتی که این موضوع برای سرچ در بخش شروع شده بات یعنی به جز قسمت سرچ، خیلی دقیق تر عمل می کند،و اینکه در بخش سرچ بات به کلامت بزرگ و کوچک حساس نیست اما در بخش جدا از سرچ حساس است مثلا اگر کاربری با نام Admin وجود دارد حتما باید با A بزرگ جستجو شروع شود در غیر اینصورت کاربر admin را پیدا می کند و اگر کپی کنم بخایم مشخصات یوزر رو ببینیم نمیشه چون کاربر اصلی با حرف بزرگ ساخته شده.
مورد بعدی در تمپلت ها گزینه حذف وجود ندارد این مورد هم اگر ممکنه اضافه بشه تا در صورت اشتباه یه عدم نیاز بشه حذفش کردimage

اضافه شدن قابلیت لاگ چنل

سلام خسته نباشی.
بات خود مرزبان قابلیت لاگ داره که وصل میشه به چنل و تغییرات رو میبینی اگه اضافه کنی و بهترش کنی خیلی خوب میشه

منابع

درود وقتتون بخیر
این ربات چقدر از منابع رو درگیر میکنه ممنون میشم راهنمایی کنید

(باگ)ساخت یوزر

باسلام هر چند شاید این مشکل ارتباطی با holderbot نداشته باشه اما فکر میکنم بی تاثیر نباشه..
هنگامی که در holderbot یوزری ساخته میشه، مشکلی در بات اصلی مرزبان بخش Users ها ایجاد میشه در واقع این کزینه غیر فعال میشه فکر میکنم تداخلی بوجود میاد که این اتفاق میفته، اما وقتی یوزر ساخته شده رو پاک میکنم مجددن بات شروع به کار میکنه..image

ضریب مصرف نود

لطفا قابلیت ضریب مصرف نود رو هم اضافه کنید تا این ربات عالی بهتر بشه.

اضافه کردن قابلیت..on_hold به اکانت تموم شده

سلام

کاش میشد اینم اضافه کنین که مثلا اکانتی که تموم شده دوباره اینطوری تنظیم کنیم بعد از عوض کردن لینک ساب دوباره با قابلیت on_hold شارژ کنیم بدیم دست مشتری. نمیدونم تونستم منظورمو برسونم یا نه .اینطوری خیلی خوب میشه و از ساخت دوباره یوزرهای زیاد جلوگیری میشه پنل هم سنگین نمیشه

امکان بروزرسانی

درود وقت بخیر
آیا این بات امکان بروزرسانی کاربر رو داره؟
مثلا کاربری که Expire شده بشه ویرایش کرد و یا تمدید حجم و انجام داد؟؟

دستور آپدیت

لطفا بفرماید هنگامی که خواستیم بات رو آپدیت کنیم چه دستوری باید بزنیم؟

قابلیت تعین نوع کانفینگ

کاش می شد این گزینه هم اضافه کرد که چه کانفینگی ساخته بشه مثلا من الان پنلم هم vemess دارم هم veless ولی فقط یکیشو میدم مشتری ربات ولی از هر دوتاش میسازه بخوام هم ویرایش کنم شروعشو میزنه

ساخت یوزر

باسلام هر چند شاید این مشکل ارتباطی با holderbot نداشته باشه اما فکر میکنم بی تاثیر نباشه..
هنگامی که در holderbot یوزری ساخته میشه، مشکلی در بات اصلی مرزبان بخش Users ها ایجاد میشه در واقع این کزینه غیر فعال میشه فکر میکنم تداخلی بوجود میاد که این اتفاق میفته، اما وقتی یوزر ساخته شده رو پاک میکنم مجددن بات شروع به کار میکنه..image

دستور حذف ربات !

سلام
ممنون از ربات خوبی ک ساختین
چون میخوام ربات رو از سرور مستر خارج کنم ، روش حذف ربات نصب شده ، رو میفرمایید

پیشنهاد (دستور آپدیت)

با توجه به اینکه فرایند بروزرسانی فعلی بات ممکن است در زمان های متفاوت کمی دشوار باشد، لطفا در صورت صلاحدید یا دستور رو در قالب یک اسکریپت پیاده سازی بفرمایید ویا در قالب دستور /update و یا اینکه به منو های بات دستور آپدیت اضافه بشه که این مورد در صورت ممکن خیلی خیلی کار رو برای کاربر راحت و راحتر میکنه که می تونه خیلی جذاب و مفید باشه،بازم ممنون بابت این بات کاربردی و مفید

زبان فارسی

سلام چرا زبان فارسی به ربات و گیت هاب اضافه نمیشه ؟

پاک کردن بات

سلام. چطور میشه سورس را انیستال کرد و تمام فایلهای نصب شده رو پاک کرد؟

پیشنهاد : اضفه کردن قابلیت بک آپ به ربات

سلام وقت بخیر، با تشکر از وقتی که برای توسعه این اسکریپت میزارید.
در حال حاضر ربات شما و ربات های دیگری برای بک آپ نصب کردیم . اگر قابلیت بک اپ از پنل مرزبان رو اضافه کنید خیلی خوب میشه.

مشکل ربات در نود و ادمین

سلام من ربات رو مطابق آموزش نصب کردم ولی به مشکل خورده بخش نود و ادمین کار نمیکنه و بعد نصب ربات هم پیام زیر نشون میده
nohup: appending output to 'nohup.out'

Notice

سلام وقتی Notice رو فعال میکنم و یک کاربر منقضی میشه و ادیت میشه بعد از اینکه تمدید کردم مگه نباید به صورت خودکار ادیت بشه و به حالت قبل برگرده ؟

پیشنهاد: حذف یوزرها

اگر قابلیت حذف یوزرها هم اضاف بشه خیلی کاربردی تر خواهد بود..
بی صبرانه منتظر نسخه ی جدید هستیم میشه پرسید کی میاد؟
با تشکر🌷

پرداخت دونیت

سلام مهندس والا دیگه نمیدونستم کجا باید پیغاام بذارم
دونیت پرداخت کردیم طور لایسنس میشه ؟؟
ایا سورس کامل ربات در اختیار ما میذارید چطوریه ؟؟

نصب روی سرور ایران

سلام مهندس من پنلم روی سرور ایران هست نمیتونه به سرور تلگرام وصل بشه میشه راهنمایی کنین خیلی واجبه

back up

اضافه شدن بکاپ گرفتن از ربات در ساعات مشخص

ادغام با ربات مرزبان

سلام دوست عزیز بابت رباتی که طراحی کردی عالیه لذا وقتی ربات شمارو با ربات مرزبان فعال میکنم قسمت users ربات مرزبان از کار میافته نمیدونم علتش چیه یا شاید از من باشه لطفا بررسی کنید..

Generate Subscription QR Only

سلام عرفان عزیز

توی بات رسمی خود مرزبان وقتی روی QR بزنیم همه کانفیگ ها و در نهایت لینک سابسکریپشن رو جنریت میکنه
و خب اگر کسی فقط QR لینک ساب و بخواد باید صبر کنه همه QR ها جنریت شه تهش اونو بفرسته
اگر بشه که ما انتخاب کنیم فقط QR لینک ساب جنریت شه خیلی خوبه

مرسی ، ممنون بابت زحماتت

لیست کردن یوزر بر اساس روز های باقیمانده

سلام

ممنون از زحمات شما بابت رباتی که ساختید یه چیزی که در بین ربات های مرزبان وجود نداره اینه که یوزر های در حال انقضا یا در حال تموم شدن حجم لیست کنه برای مثال ربات بیاد لیست یوزر هارو جوری بچینه که به ترتیب تموم شدن زمان باشن و یا تموم شدن حجم لطفاً این رو اضافه کنید

باز هم ممنون از شما

پیشنهاد اضافه شدن بخشی تحت عنوان یادآوری ها

برای مثال با فعال کردن یادآوری زمانی، بصورت اتوماتیک و روزانه نام کاربری افرادی که کمتر از 24 ساعت به انقضاشون مونده، ارسال بشه.
همچنین در بخش یادآوری حجمی، اونهایی که مثلا 95% حجم شون رو استفاده کردن، آیدی هاشون به ربات ارسال بشه.
نمیدونم در چه حد عملیه و آسونه یا سخت، ولی فوق العاده کاربردیه.
دم شما گرم.

ناقص کردن لینک سابسکریشن

سلام وقت بخیر

تمام مراحل رو درست رفتم ولی ربات لینک سابسرکیشن رو به این صورت میده

/sub/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9sadasda.eyJzdWIiOiJzc3NzczEiLCJhY2Nlc3MiOiJzdWJzY3JpcHRpb24iLCJpYXQiOjE3MDY0Mzc3MDd9.2MSKhzW6wWsX4-htqR0f2Nc6saYj2iSgLsbmE7-D8Mw

و ساب دامین پنل رو نمیذاره

عکس QR هم اسکن کردم داخل ویتوری جلوی ساب دامین پورت پن که 443 هست میذاره و سابسکریشن رو ناقص میکنه و کار نمیکنه و مجبور میشیم دستی 443 رو حذف کنیم

چند بار هم امتحان کردم نه یک بار بازم همین بود

۴ مشکل در ساخت یوزر گروهی در آپدیت

سلام. من تو آپدیت ۴ نمیتونم یوزر گروهی با اسم و کد دلخواه مثل وژن ۳ بسازم قبلا یه دستور میزدیم /cr SIGMA@p. 45 10 30 30 راحت اینطوری ۱۰ تا درست میکرد ولی الان نه

Vless Flow

Please add enable Flow in the Vless config

راهنمایی

درود وقتتون بخیر این ربات درواقع میاد ربات خود مرزبان رو قابلیت هاش رو اضافه میکنه یا اینکه یه ربات کاملا جدا هستش؟
روی هاست یا سرور جدا هم میشه نصبش کرد یا روی همون سرور باید نصب بشه؟
Screenshot_20240307_052310
توی این عکس باید این دستورات رو توی سرور نود بزنیم یا سرور اصلی؟

خطای i can't check inbounds !

سلام.
من یک بار دستور ساخت رو زدم کاربر ساخت.به بعد همش این پیام را میدهد.چند باز هم دوباره نصب کردم.ممنون میشم راهنمایی کنید
❌ i can't check inbounds !
{"detail":"Could not validate credentials"}

ارور ssl

همه کار هارو درست انجام میدم اما موقع ساختن اکانت ارور ssl دارم

httpsconnectionpool(host='ادرس دامنه', port=443): max retries exceeded with url: /api/admin/token (caused by sslerror(ssleoferror(8, 'eof occurred in violation of protocol (_ssl.c:1131)')))

نشون ندادن گزینه های بات

سلام
یه مشکلی من دارم دستورات اجرا کردم وصل شد به پنل ولی هیچ دکمه ای توی ربات برام نشون نمیده. کار اضافه تری باید انجام بدم ندادم؟
Scذbot7

وضعیت کاربرها

خیلی خسته نباشین، تشکر بابت ربات خوبتون

یه درخواست داشتم که اگر امکانش هست، قابلیتی اضافه کنید که مثلا یک روز قبل یا همون روزی که ساب قراره تایمش تموم شه ربات به ما اطلاع بده
خلاصه یه چیزی تو این مایه‌ها، حالا با هر متودی که فک میکنین بهتره

گسترش دادن بخش Notice

ممنون از عرفان گل که زحمت این ربات رو کشیده

دوتا ایده دارم که احتمالا قابل اجرا باشه ، اول اینکه وقتی یوزر لیمیت میشه به جای اینکه یک کانفینگ نشون بده حجم شما تمام شد یه کانفینگ رو به صورت جیسون ارسال کنه که توش فرگمنت باشه یعنی مثلا یک فرگمنت ایجاد کنم که جیسون اون فایل رو به ارسال کنه تا کاربر بیاد بهش وصل بشه و با مثلا سرعت کم( چون اکثر فرگمنت ها سرعت جالبی ندارند ) وارد تلگرام بشه و پیام بده که براش تمدید کنیم

یه ایده دیگه اینکه توی کانفینگ های لینک اشتراک بتونیم علاوه بر کانفینگ هایی که یوزر خرید کرده چند تا کانفینگ دیگه ارسال بشه مثلا من قراره به تموم اعضا عیدی کانفینگ دو روزه بدم و می خوام برای تموم یوزر ها فعال بشه که اگه به اون کانفینگ وصل بشن اصلا از حجمشون کم نشه و رایگان براشون بیوفته یعنی اون کانفینگ از کل پنل جدا باشه ولی بیاد برای بوزر ها

بخش Notice ام اگه بشه برای یوزر ها جدا بشه که مثلا برای یوزر های نماینده ها متن جدا براشون بره که عالی میشه

به امید موفقیت بیشتر شما ❤️❤️

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.