thinh-vu / vnstock Goto Github PK
View Code? Open in Web Editor NEWA powerful Python library for getting rich data from the Vietnam Stock Market using just a few lines of code
Home Page: https://vnstocks.com
License: Other
A powerful Python library for getting rich data from the Vietnam Stock Market using just a few lines of code
Home Page: https://vnstocks.com
License: Other
Yêu cầu tính năng có liên quan đến một vấn đề? Vui lòng mô tả.
Hiện ko thấy phần QA test cho vnstock. Phần này có thể giúp contributors chạy unit test, tăng độ tin cậy hơn khi đóng góp code
Mô tả giải pháp bạn muốn
Dùng pytest.
Folder structure:
vnstock
|_ vnstock
|_ docs
|_ test
Mô tả các giải pháp hoặc tính năng thay thế bạn đã xem xét
N/A
Bổ sung thông tin
Nếu maintainer thông qua thì m có thể bắt đầu từ test case cho "funds.py" của issue này.
It seem like "financial_report" code could not run smoothy. Please kindly review.
Thanks,
Regards,
Dạo trước e vẫn lấy data trên investing.com, nhưng được cái bị chặn liên tục, hqua vô lại thì k vào được :> nay tìm được bác mừng quá. Cảm ơn ạ. Update cho mọi người là vẫn dùng được thôi :>
Easily update vnstock data from Google Colab to Google Sheets.
Mô tả lỗi
2023-10-26,1081210,1083220,1049710,1055450,1171656703,VNINDEX
2023-10-27,1059570,1061870,1037460,1060620,675686016,VNINDEX
2023-11-01,1029430,1039660,1020010,1039660,674512192,VNINDEX
2023-11-02,1039859,1075470,1039859,1075470,767166720,VNINDEX
2023-11-03,1077640,1082230,1071110,1076780,739651904,VNINDEX
Chỉ số nên là 1077,64 ví dụ vậy, có vẻ như đã nhân thêm 1000 không hợp lý
data lấy từ database không cùng đơn vị, có thể là đơn vị nghìn đồng hoặc đồng. Không lọc sạch được data vì có những cổ phiếu lên tới 1 triệu 1 cổ, có cổ chỉ vài trăm đồng. Nếu cổ có giá trị 900 thì k biết được là 900 đồng hay 900 nghìn. cách duy nhất lúc này là loại những cổ có giá trị quá thấp đi thì mới dùng được data.
lỗi khi gọi hàm listing_companies()
Why financial_report
can't be used in my python3?
from vnstock import *
df = financial_report (symbol='SSI', report_type='BalanceSheet', frequency='Quarterly')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/debian/.local/lib/python3.9/site-packages/vnstock/stock.py", line 172, in financial_report
df = pd.read_excel(BytesIO(r.content), skiprows=7).dropna()
File "/home/debian/.local/lib/python3.9/site-packages/pandas/util/_decorators.py", line 311, in wrapper
return func(*args, **kwargs)
File "/home/debian/.local/lib/python3.9/site-packages/pandas/io/excel/_base.py", line 364, in read_excel
io = ExcelFile(io, storage_options=storage_options, engine=engine)
File "/home/debian/.local/lib/python3.9/site-packages/pandas/io/excel/_base.py", line 1195, in __init__
raise ValueError(
ValueError: Excel file format cannot be determined, you must specify an engine manually.
Search the source code:
def financial_report (symbol, report_type, frequency, headers=headers): # Quarterly, Yearly
"""
This function returns the balance sheet of a stock symbol by a Quarterly or Yearly range.
Args:
symbol (:obj:`str`, required): 3 digits name of the desired stock.
report_type (:obj:`str`, required): BalanceSheet, IncomeStatement, CashFlow
report_range (:obj:`str`, required): Yearly or Quarterly.
"""
url = 'https://fiin-fundamental.ssi.com.vn/FinancialStatement/Download{}?language=vi&OrganCode={}&Skip=0&Frequency={}'.format(report_type, symbol, frequency)
r = requests.get(url, headers=headers)
df = pd.read_excel(BytesIO(r.content), skiprows=7).dropna()
return df
Get the url as below:
https://fiin-fundamental.ssi.com.vn/FinancialStatement/DownloadBalanceSheet?language=vi&OrganCode=SSI&Skip=0&Frequency=Quarterly
Paste into browser:
data | null
-- | --
fileName | null
status | "Failed"
errors |
0 | "Could not find file 'C:\\FiinTrade\\FiinTrade\\FiinTrade.Fundamental\\wwwroot\\Templates\\.xlsx'."
Maybe the api is broken!
Mô tả lỗi
Mô tả một cách rõ ràng và ngắn gọn về lỗi.
stock_historical_data('VNINDEX', '2013-01-01', '2023-11-11', '1D, 'index')
Dữ liệu chỉ chạy đến ngày 5/11/2020. Lỗi này chỉ xảy ra với vnindex, các symbol khác vẫn có data cũ hơn.
Fuction price_board đang gọi đến api "https://apipubaws.tcbs.com.vn/stock-insight/v1/stock/second-tc-price?tickers=MWG"
Ngay lúc này api này trả về kết quả
{ "data": [ { "t": "MWG", "fv": 1.57, "mav": 3.84, "nstv": 268600, "nstp": 27.0, "rsi": 67.9774, "macdv": 0.00, "macdsignal": "Neutral", "tsignal": "Buy", "avgsignal": "Strong Buy", "ma20": 43002.5, "ma50": 40632.0, "ma100": 40334.5, "session": 1, "mw3d": 5.0, "mw1m": 8.9, "mw3m": 16.4, "mw1y": -28.9, "rs3d": 93.0, "rs1m": 80.0, "rs3m": 61.0, "rs1y": 9.0, "rsavg": 61.0, "hp1m": 45500, "hp3m": 45500, "hp1y": 74100, "lp1m": 40650, "lp3m": 37700, "lp1y": 37700, "hp1yp": -38.6, "lp1yp": 20.7, "pe": 24.9, "pb": 2.8, "roe": 0.117042, "oscore": 3.8, "av": 64800, "bv": 91200, "ev": 47892, "hmp": 44000, "mscore": 0.68, "delta1m": 6.2, "delta1y": -27.9, "seq": 1688716740, "vnid3d": 0.3, "vnid1m": 2.7, "vnid3m": 6.3, "vnid1y": -1.0, "cp": 45050.0, "vnipe": 13.6522, "vnipb": 1.65116 } ] }
Theo như kết quả này giá của cổ phiếu đang là 45050 nhưng giá trên bảng giá của tcbs đang là 45500.
from vnstock import *
df = financial_flow(symbol='pvc',report_type='incomestatement',report_range='yearly')
df['shareHolderIncome'].head(5)
index
2023 20
2022 12
2021 8
2020 5
2019 22
What is the unit for every year's data?trillion or billion or million?
VVS,XDC,HSV,CST,BVL,SGI,TOS,VTZ,SSH,BCA,FUCTVGF3,FUEIP100,GMH,BIG,CMM,CNA,FUEKIV30,ODE,HMR,PCH,DSD,NO1,MGR,PPT,CVP,CAR,GPC,FUCTVGF4,FUEDCMID,FUEKIVFS,FUEMAVND,GCF,LPT,ACS,ACV,AFX,CKA,AGP,CAG,LTG,AGG,AGX,AG1,AGE,ACG,ANT,APH,APL,HII,A32,ASG,ATG,AVC,BAF,BAL,BCV,BNA,BRR,CBC,BLW,VLB,BBH,BBT,BCB,BCP,MVC,BFC,BDG,BSA,PRT,BEL,NBT,BGW,BHK,BHP,BCM,BLT,DBD,BHG,BIO,BWE,BKG,BLI,MH3,DTB,BMD,BMG,BMS,MBN,BNW,VTG,BSP,BSR,BTN,BTD,BTV,BLN,BVN,TNH,BWA,BWS,HNB,C69,C22,C71,TS3,CPA,CFV,CCT,CCA,HFB,CMW,KCB,CBS,VSM,CDH,CDG,CRE,STK,TW3,CFM,CH5,CHC,CLX,CI5,CE1,CEG,C4G,C12,CKG,CIP,CBI,CK8,CMK,ADG,CMF,TVH,TIN,CMD,CAT,CC1,CDP,TCK,CMN,ICN,CNN,DP1,DTP,CPH,CIA,CRC,SGP,CT3,GTS,ICT,TTS,AUM,DCR,DCG,DRG,DRI,UDL,DWC,DHB,ADS,DAN,DNE,DAP,DAS,DPG,TDB,VBG,DCF,DM7,DC1,TTE,DLM,DUS,NSS,DNW,DND,CDN,DSC,DNT,DOC,MCD,BSD,DMN,DOP,CDR,DWS,DPP,DP2,DSV,BDT,DTN,DTV,MTV,MGG,DVC,DSG,DVW,DXS,FUESSV50,E1VFVN30,E29,EME,EMG,EMS,EPC,FUESSVFL,EVG,EVF,EIC,LEC,FHS,ROS,FBA,FIC,FIR,FSO,ART,FOC,FBC,FCS,FRM,DP3,FTM,FRT,FTS,FRC,FT1,FOX,FTI,FUEMAV30,FUESSV30,FUEVFVND,FUEVN100,GAB,M10,BVB,GEX,GEE,PGV,FGL,GLW,GEG,GIC,C36,DDH,GTH,H11,PHN,HC1,HCB,HC3,HDP,HPX,HID,HNR,HLB,HLT,HAM,HHV,AAS,BBM,HAN,HD6,HNP,HSM,HTM,HES,GH3,HAV,HGW,HTW,HBH,XDH,HCD,HCI,HTE,DHD,HDW,HEC,HEJ,HEM,HEP,HFC,HFX,HGT,HHN,HHP,HHR,TCH,HSL,HPI,HKP,HLR,HLS,HMS,BKH,DCH,HAF,HNA,DHN,HRT,TSJ,HJC,HAC,CCP,HPH,HPM,HPP,DPH,HPT,TUG,HPW,HRB,HSP,HTN,HTR,HD2,HU6,HD8,HWS,HNI,HUG,HNF,HVH,L40,ICC,ILB,ICI,CC4,IDC,MCI,IME,IBD,DDG,IRC,ILS,IPA,ISG,ITS,KTC,KHG,KHW,KGM,KHS,KLM,GKM,KOS,KHD,LMC,L45,L63,LMI,DKC,LSG,LBC,LCC,LQN,LWS,LDG,LDW,LGM,LIC,L12,LG9,LLM,LAI,AMS,LKW,LNC,LPB,MA1,MCM,MDA,MEF,MEL,MRF,MES,JOS,MIE,MIG,MTA,MLS,MLC,MML,MPY,MCH,MSR,MTC,MTH,MTL,NAU,MTP,NDP,NJC,NAC,FHN,NTF,BAB,NAS,VET,NAW,NBE,NDC,MND,HND,NDW,NED,NRC,MNB,VCE,VHM,NHT,NHV,NLS,NNT,NVL,PMB,PSH,NTT,NUE,NTW,NWT,NXT,EVS,TOW,ONW,PAI,PAP,PC1,PCC,CSI,PDV,PEC,PEQ,PCF,PEG,PTV,PLX,PLP,PBC,PIA,PIC,PIS,EIN,PJS,PLA,PLO,PLE,PMG,PMJ,PMP,PMW,PNG,PNT,POB,DNA,PPH,BT1,PSL,GCB,PTE,PTO,KSF,PTG,PTN,PTP,POS,PSN,PTX,PTT,DSP,DTD,DAT,PBK,PBT,PCE,PVM,PXC,PVH,PCN,PSW,RGC,PRE,OIL,PPY,POW,PVY,PVP,PWA,PX1,PWS,BQB,MQN,QSP,CQN,PQN,QNS,QNT,QTP,QNU,QNW,NQN,RAT,RCD,TBR,DS3,RBC,S72,BSH,BSQ,SGN,SAL,SKV,SKH,APT,CHS,BSL,SAC,VNB,SAB,SBD,SBH,SBM,SID,SCS,XLV,SDV,SSB,SEA,SPV,SEP,BSG,NSG,SRT,SIP,TPS,NSH,MSH,SHX,SBV,SZC,SIV,SKN,SNC,SMN,SIG,SNZ,SZG,SJG,SHE,SBR,NSL,SPB,SPH,SP2,ISH,TSG,S4A,SSF,STW,SUM,SZB,TA3,TA6,TA9,TKA,AST,TB8,TBH,RTB,TBT,FUCVREIT,TCI,G36,TCW,VCP,GTD,TDG,TTD,TDM,NTH,TDT,CET,TED,TEL,TGG,TGP,MTB,TLP,TDI,THN,BTB,DTH,THI,TQN,THU,TAN,TTH,TID,DTG,TLD,TTL,TLI,MBS,TMW,STH,BAX,TNS,TNI,TNM,TNP,TCJ,BCF,THP,TR1,TCD,TVW,TRS,TAR,TDF,TVB,TSD,TTT,TTG,HUB,TRT,GND,TQW,TV6,TVA,TVG,TVP,TNW,UCT,UEM,FCC,UMC,UPC,UPH,USC,USD,PAT,CCV,VIH,CLM,VCI,VDB,VDN,VDT,VEA,VEC,VFS,VUA,NDT,TVT,SB1,PVO,MBG,VDP,MVB,VJC,DVM,VTD,VTR,VLC,VIM,TVM,TMG,DTK,VIF,VHE,VHD,VVN,KIP,VGT,VMT,VGL,GVT,VPS,VGR,VLP,VIR,VSN,VWS,VIW,VMS,ABC,MGC,VMA,MTS,AIC,HVN,VGV,CGV,TMB,E12,BMV,VSF,VNZ,MVN,VLG,VPD,DVN,VNP,GVR,TVN,VXT,VNY,VNX,VOC,VSA,VPR,VPA,VPI,VPW,NVP,VRE,VSE,VGG,VGI,VTI,VTK,VTM,VTP,VTQ,VBB,DLT,CAB,CLH,VLW,VW3,VCW,WTC,X26,EPH,DFC,CQT,XHC,XMP,YBM,YEG,YTC
Integrating commonly used chart types for fundamental visualization needs
Sometimes the request will be timeout. This is the way i fix it.
from requests.adapters import HTTPAdapter from urllib3.util.retry import Retry session = requests.Session() retry = Retry(connect=3, backoff_factor=0.5) adapter = HTTPAdapter(max_retries=retry) session.mount('http://', adapter) session.mount('https://', adapter)
and then replace request.get() by session.get()
Mô tả lỗi
Code xuất dữ liệu VNindex
from vnstock import * #import all functions
#df = stock_historical_data(symbol='VNINDEX', start_date='2001-01-01', end_date='2023-10-10', resolution='1D', type='index')
df = stock_historical_data(symbol='VNINDEX', start_date= "2001-01-01", end_date= TODAY, resolution='1D', type='index')
fig = candlestick_chart(df,
title='VNINDEX Candlestick Chart with MA and Volume', x_label='Date', y_label='Price', ma_periods=[50,200],
show_volume=True, figure_size=(15, 8), reference_period=300,
colors=('lightgray', 'gray'), reference_colors=('black', 'blue'))
fig.show()
Kết quả
chỉ xuất được dữ liệu sau 2020
By trying the docs format of openbb with vnstock, in this PR #102 , i wonder:
Benefits: much more concise and easier to read code
Another issue has also raised up while writing this docs page. vnstock
does not have a proper data model for result output
pydantic
package for data model.vnstock
can expand beyond its current structure.Cách tái hiện lại lỗi để xử lý
Các bước để tái hiện sự cố:
fund_details(symbol='VESA', type='nav_report')
Mong muốn đạt được
Hàm trả về lỗi, hoặc thông báo chưa có thông tin quỹ nếu mã quỹ nhập vào không đúng
Ảnh chụp màn hình
Máy tính để bàn (vui lòng cung cấp thông tin sau):
P/S: Mình có thể contribute vào code thông qua việc sửa lỗi này được không ạ?
How can get outstanding shares data for every year?
When i get price of stock 'CET':
df = stock_historical_data(symbol='CET',start_date="2023-06-30",end_date='2023-07-04')
df
time open high low close volume
0 2023-06-30 09:00:00+07:00 9.1 9.1 8.6 8.6 13200
1 2023-07-03 09:00:00+07:00 9.0 9.1 8.4 8.5 15400
The unit is in 1000 VND or not?
Hi Anh,
Function Intraday is not working and the errors notice as below:
121 data = requests.get('https://apipubaws.tcbs.com.vn/stock-insight/v1/intraday/{}/his/paging?page={}&size={}'.format(symbol, page_num, page_size)).json()
--> 122 df = json_normalize(data['data']).rename(columns={'p':'price', 'v':'volume', 't': 'time'})
Hope you could spend your valuable time to review and fix this errors. I try but could not fix this problem. :(
Many thanks and best regards,
Mô tả lỗi
Hàm financial_ratio_compare không hoạt động. Dữ liệu trả về không phải định dạng Excel
Cách tái hiện lại lỗi để xử lý
Các bước để tái hiện sự cố:
Mong muốn đạt được
Fix lỗi như ver 0.2.8.8
Máy tính để bàn (vui lòng cung cấp thông tin sau):
Mô tả lỗi
Khi lấy data intraday của 1 symbol bất kỳ ví dụ như VCB vào giờ nghỉ ví dụ như 12h trưa 1 ngày giao dịch bình thường
Lỗi hiện ra là: unconverted data remains: 12:47:48 (ví dụ)
Draw upon the architecture influenced by OpenBB Terminal. Source of inspiration: https://github.com/OpenBB-finance/OpenBBTerminal
@thinh-vu
ví dụ như hàm ,
pip install vnstock
from vnstock import *
df = stock_historical_data(symbol='VNM',
start_date="2021-01-01",
end_date='2022-02-25')
print(df.head())
result ,
[2 rows x 50 columns]
Open High Low Close Volume TradingDate
0 98565.0 98655.0 97936.0 98206.0 2299600 2021-01-04
1 98654.0 101556.0 98292.0 100468.0 4013900 2021-01-05
2 100649.0 100921.0 99561.0 99561.0 2823100 2021-01-06
3 99742.0 100468.0 99561.0 100105.0 2453000 2021-01-07
4 101103.0 102372.0 100559.0 101556.0 3323000 2021-01-08
Khi mình lấy cái quả , nó chỉ hiện 5 kết quả ra thôi :)))
Mình là dev ,mà khi cài lib . để sử dụng mà cug thấy khá khoai:)) ). Vẫn mất thời gian mò vào lib
Mô tả lỗi
Không thể import thư viện, báo lỗi TypeError: 'type' object is not subscriptable
Cách tái hiện lại lỗi để xử lý
Các bước để tái hiện sự cố:
Mong muốn đạt được
Code chạy bình thường.
Máy tính để bàn (vui lòng cung cấp thông tin sau):
Yêu cầu tính năng có liên quan đến một vấn đề? Vui lòng mô tả.
Cào dữ liệu về quỹ mở (open-ended fund) từ https://fmarket.vn/
Mô tả giải pháp bạn muốn
thêm các hàm để truy xuất dữ liệu về quỹ mở
Mô tả các giải pháp hoặc tính năng thay thế bạn đã xem xét
N/A
Bổ sung thông tin
Status: WIP
Calling:
AST = financial_report (symbol= "AST", report_type='BalanceSheet', frequency='yearly')
same with "FRT" as well
Error:
Traceback (most recent call last):
File "main.py", line 247, in <module>
getRate(retail_code)
File "main.py", line 49, in getRate
incomeData = financial_report (symbol= bank, report_type='IncomeStatement', frequency='yearly')
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/vnstock/stock.py", line 172, in financial_report
df = pd.read_excel(BytesIO(r.content), skiprows=7).dropna()
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pandas/util/_decorators.py", line 296, in wrapper
return func(*args, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pandas/io/excel/_base.py", line 304, in read_excel
io = ExcelFile(io, engine=engine)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pandas/io/excel/_base.py", line 867, in __init__
self._reader = self._engines[engine](self._io)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pandas/io/excel/_xlrd.py", line 22, in __init__
super().__init__(filepath_or_buffer)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pandas/io/excel/_base.py", line 351, in __init__
self.book = self.load_workbook(filepath_or_buffer)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pandas/io/excel/_xlrd.py", line 35, in load_workbook
return open_workbook(file_contents=data)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/xlrd/__init__.py", line 157, in open_workbook
ragged_rows=ragged_rows,
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/xlrd/book.py", line 92, in open_workbook_xls
biff_version = bk.getbof(XL_WORKBOOK_GLOBALS)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/xlrd/book.py", line 1278, in getbof
bof_error('Expected BOF record; found %r' % self.mem[savpos:savpos+8])
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/xlrd/book.py", line 1272, in bof_error
raise XLRDError('Unsupported format, or corrupt file: ' + msg)
xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b'{"data":'
As Cổ phiếu phổ thông in year of 2022 in the market is 1.097.026.572. but reported in the BalanceData is "10,970,265,720,000.0".
I'm not sure why there are so many zeros afterwards.
Lấy ví dụ như dữ liệu của NT2, khung thời gian 30p:
time open high low close volume ticker
0 2024-02-15 09:00:00 25010 25010 25010 25010 1500 NT2
1 2024-02-15 09:30:00 24910 24910 24910 24910 200 NT2
2 2024-02-15 10:00:00 24960 24960 24960 24960 500 NT2
3 2024-02-15 10:30:00 24960 24960 24960 24960 200 NT2
4 2024-02-15 11:00:00 25010 25010 25010 25010 100 NT2
.. ... ... ... ... ... ... ...
193 2024-03-15 11:00:00 25100 25100 25100 25100 100 NT2
194 2024-03-15 13:00:00 25150 25150 25000 25000 281000 NT2
195 2024-03-15 13:30:00 25000 25100 24950 25000 190900 NT2
196 2024-03-15 14:00:00 25100 25100 24950 25100 127600 NT2
197 2024-03-15 14:30:00 25100 25100 25100 25100 13800 NT2
Chúng ta có thể thấy là giá open, high, low, close của mỗi row hầu như là bằng nhau, điều này khá vô lý, chúng ta có thể mở chart của fireant sẽ thấy giá trong 30m có sự vận động lên xuống rất nhiều chs không đứng yên ở 1 chỗ.
Về volume cũng có vấn đề, ví dụ đây là volume ngày 15/3/2024:
2024-03-15 09:00:00 2024-03-15 09:00:00 25250 25250 25250 25250 3900 NT2
Ở đây data trả về là 3900, tuy nhiên nếu xem dữ liệu khớp lệnh trên fireant thì hơn con số này nhiều (chỉ tính đếnh phút 15 đã hơn con số này):
Chào anh Thịnh,
Đối với 1 số máy windows, sau khi cài python mới nhất, cài vnstock. thực hiện hàm ticker_overview sẽ báo lỗi thiếu module requests. Cách fix tạm là pip install requests
Nhờ team thêm requirements để khi cài đặt vnstock thì có cài theo module liên quan luôn nhé anh
Mô tả lỗi
Mô tả một cách rõ ràng và ngắn gọn về lỗi.
Cách tái hiện lại lỗi để xử lý
Các bước để tái hiện sự cố:
Mong muốn đạt được
xuất ra được DataFrame phân tích ngành
hi @thinh-vu
Bạn có thể thêm module command line cho app vnstock , thì sẽ dễ sử dụng hơn
Ví dụ như:
vnstock list -a Show toan bộ công ty
vnstock price -s HPG , -> show gia của HPG
Rồi bổ sung thêm dần dần :)))
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.