vysheng / tg Goto Github PK
View Code? Open in Web Editor NEWtelegram-cli
License: GNU General Public License v2.0
telegram-cli
License: GNU General Public License v2.0
Hi,
I want to change my phone number,
Download source package and build telegram-client, but when start telegram-client, take the another number.
How can have 2 telegram-client on more in the same pc
thanks.
Thank
I successfully get a message with the Cyrillic alphabet, but can not send. Not sure about this problem on my side or a problem in the client.
ox x 10.9, iterm 2
Would be good if someone could check archlinux support, and if it works, make a package build (PKGBUILD) to upload the application to the AUR.
I would like to point out that identifiers like "__INTERFACE_H__
" and "__TOOLS_H__
" do not fit to the expected naming convention of the C language standard.
Would you like to adjust your selection for unique names?
Managed to find the corresponding libraries for readline and libconfig on ubuntu.
Did the following.
sudo apt-get install libconfig8-dev
- libconfig
sudo apt-get install libreadline-gplv2-dev
readline
configure runs smoothly but when making throws up the following error.
gcc main.o loop.o interface.o net.o mtproto-common.o mtproto-client.o queries.o structures.o binlog.o -lm -lcrypto -lz -lssl -rdynamic -ggdb -ledit -lrt -lconfig -o telegram /usr/bin/ld: cannot find -ledit collect2: ld returned 1 exit status make: *** [telegram] Error 1
Hi guys,
I try from command line:
echo 'msg user test10\n' | ./telegram -k tg.pub
i get: bad user/chat id
Is there a way to send msg directly from command line ?
(so i could use it for my servers monitoring tools)
Thanks
Theodore
Hello! Thnx for awesome client!
How can i turn off online\offline notifications?
I'll just post it here and see what happen next... :)
Try it! just as http://loqui.im/ is trying. Do you have any plan on it?
Probably user error, but here goes... Here is my config file:
https://gist.github.com/9bb34cc2fee50d4799da
Yet I am still not getting message numbers when I load the telegram binary.
Hi folks,
not sure if ./configure went through smoothly. Receiving this:
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for sqrt in -lm... yes
checking for AES_set_encrypt_key in -lcrypto... no
checking for rl_save_prompt in -lreadline... no
checking for rl_set_prompt in -ledit... no
checking for clock_gettime in -lrt... yes
checking Checking for libconfig... enabled
checking for config_init in -lconfig... no
configure: error: No libconfig found. Try --disable-libconfig
When "make" ist invoked:
gcc -g -O2 -DHAVE_CONFIG_H -Wall -Wextra -Werror -Wno-deprecated -fno-strict-aliasing -fno-omit-frame-pointer -ggdb -I. -I. -c main.c -o main.o
main.c:31:31: fatal error: readline/readline.h: No such file or directory
compilation terminated.
make: *** [main.o] Error 1
On a side note: needed to change untar'ing (tar xzf ./tg-master.zip && cd tg-master) and used unzip command as followed:
unzip ./tg-master.zip -d .
Any idea what is wrong? Any help appreciated.. thanks!
Best, Mariusz
'If you have contacts with user names call "contact_list" to see the internal user name which has to be used with msg or user_info'
'Tab completion is supported for user names'
Please, add OS X support!
I guess that a different program design will be needed for your function "sig_segv_handler".
The command-line CLI is working pretty smoothly.
I tried some stdin-passing but without success.
tg-master$ echo "msg peer_name test" | ./telegram -k tg.pub
Telegram-client version 0.01-beta, Copyright (C) 2013 Vitaly Valtman
Telegram-client comes with ABSOLUTELY NO WARRANTY; for details type show_license'. This is free software, and you are welcome to redistribute it under certain conditions; type
show_license' for details.
tcgetattr(): Inappropriate ioctl for device
Am I missing something or is it an RFE ? :)
*** bad_msg_notification: msg_id = 5976720082993144832, seq = 1, error = 17
*** bad_msg_notification: msg_id = 5976720082993144836, seq = 2, error = 17
*** bad_msg_notification: msg_id = 5976720082993144840, seq = 4, error = 17
*** bad_msg_notification: msg_id = 5976720082993144844, seq = 6, error = 17
I have looked at a few source files for your current software. I have noticed that some checks for return codes are missing.
Would you like to add more error handling for return values from functions like the following?
This error popps up when trying to run "make" on the current code from git.
Commenting out the line gets rid of the error.
The line was introduced with commit 0819dcf
I'd like to ban, add users to chat, etc from client.
I think, it is usefull feature.
It happened to me three times already. I think that this comes up when I'm idle for some time and the client tries to reconnect.
Here's what I get on command line, I'll try to reproduce it with more verbose (debug) logs:
*** Lost connection to server... 31.210.235.12:80
*** connection ready
*** Lost connection to server... 31.210.235.12:25
*** Lost connection to server... 31.210.235.12:443
[1 unread]telegram: queries.c:259: tree_insert_timer: Assertion `c' failed.
Signal 6 received
./telegram(print_backtrace+0x1c)[0x40c99c]
./telegram(sig_handler+0x28)[0x40c9e8]
/lib/x86_64-linux-gnu/libc.so.6(+0x370b0)[0x7f36a8aa50b0]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x37)[0x7f36a8aa5037]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x148)[0x7f36a8aa8698]
/lib/x86_64-linux-gnu/libc.so.6(+0x2fe03)[0x7f36a8a9de03]
/lib/x86_64-linux-gnu/libc.so.6(+0x2feb2)[0x7f36a8a9deb2]
./telegram(tree_merge_timer+0x0)[0x420340]
./telegram(insert_event_timer+0x46)[0x420726]
./telegram(restart_connection+0x1b8)[0x412fe8]
./telegram(connections_poll_result+0x42)[0x413af2]
./telegram(net_loop+0xea)[0x40d68a]
./telegram(main_loop+0x13)[0x40d7c3]
./telegram(loop+0x1da)[0x40e45a]
./telegram(main+0x6d)[0x40bedd]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7f36a8a8fea5]
./telegram[0x40bf0d]
$ wget https://github.com/vysheng/tg/archive/master.zip -O tg-master.zip
$ tar xzf tg-master.zip && cd tg-master
its
$ unzip tg-master.zip
binlog.c: In function ‘add_log_event’:
binlog.c:806:5: error: format ‘%ld’ expects argument of type ‘long int’, but argument 2 has type ‘int’ [-Werror=format]
cc1: all warnings being treated as errors
make: *** [binlog.o] Error 1
I have problem on my mac
MacBook-Pro-Nikita:tg nikita$ ./telegram -k tg.pub
Telegram-client version 0.01-beta, Copyright (C) 2013 Vitaly Valtman
Telegram-client comes with ABSOLUTELY NO WARRANTY; for details type show_license'. This is free software, and you are welcome to redistribute it under certain conditions; type
show_license' for details.
Telephone number (with '+' sign): +7xxxxxxxxxx
*** phone registered
*** sending code
*** send_code: dc_num = 2
Code from sms: 76778
Assertion failed: (y == CODE_user_profile_photo), function fetch_user, file structures.c, line 205.
Signal 6 received
0 telegram 0x000000010f5ebcfc print_backtrace + 28
1 telegram 0x000000010f5ebd59 sig_handler + 41
2 libsystem_platform.dylib 0x00007fff9008d5aa _sigtramp + 26
3 ??? 0x00007fff506154f0 0x0 + 140734541944048
4 libsystem_c.dylib 0x00007fff89b05bba abort + 125
5 libsystem_c.dylib 0x00007fff89acfa5f basename + 0
6 telegram 0x000000010f60c05b fetch_user + 1083
7 telegram 0x000000010f602f3a sign_in_on_answer + 106
8 telegram 0x000000010f601067 query_result + 887
9 telegram 0x000000010f5fe794 work_rpc_result + 180
10 telegram 0x000000010f5fe416 rpc_execute_answer + 646
11 telegram 0x000000010f5ff2e7 process_rpc_message + 1527
12 telegram 0x000000010f5f8996 rpc_execute + 566
13 telegram 0x000000010f5f607f try_rpc_read + 1103
14 telegram 0x000000010f5f628d try_read + 509
15 telegram 0x000000010f5f64e9 connections_poll_result + 137
16 telegram 0x000000010f5ec04d net_loop + 605
17 telegram 0x000000010f6031be do_send_code_result + 174
18 telegram 0x000000010f5eeca9 loop + 1161
19 telegram 0x000000010f5eba8d inner_main + 13
20 telegram 0x000000010f5ebde3 main + 131
21 libdyld.dylib 0x00007fff8e4b95fd start + 1
Compiling on Mac OS 10.8.5 following the Mac build instructions yields this:
gcc -I/usr/local/include -I/usr/local/Cellar/readline/6.2.4/include -DHAVE_CONFIG_H -Wall -Wextra -Werror -Wno-deprecated -fno-strict-aliasing -fno-omit-frame-pointer -ggdb -I. -I. -c main.c -o main.o
cc1: warnings being treated as errors
cc1: warning: command line option "-Wno-deprecated" is valid for C++/Java/ObjC++ but not for C
make: *** [main.o] Error 1
It's fixable by removing "-Werror" from Makefile.in:7, but I'm not sure if that's something you want to do.
There is a typo in interface.c
at line 881 https://github.com/vysheng/tg/blob/master/interface.c#L881
It says <char>
and I think it should be <chat>
.
Hello
I'm trying to compile In FreeBSD 10
FreeBSD fbsd 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Fri Jan 17 01:46:25 UTC 2014
Clone GitHub Repository
$ git clone https://github.com/vysheng/tg.git && cd tg
Install these ports:
devel/libconfig
devel/libexecinfo
Then build:
$ env CC=clang CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib LUA=/usr/local/bin/lua51/lua LUA_LIB=-l/usr/local/lib/lua51 ./configure
And I have this:
checking for gcc... clang
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether clang accepts -g... yes
checking for clang option to accept ISO C89... none needed
checking for sqrt in -lm... yes
checking for library containing clock_gettime... none required
checking for library containing backtrace... -lexecinfo
checking for inflate in -lz... yes
checking for AES_set_encrypt_key in -lcrypto... yes
checking for rl_save_prompt in -lreadline... yes
checking for libconfig... enabled
checking for config_init in -lconfig... yes
checking for liblua... checking how to run the C preprocessor... clang -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
enabled
checking if /usr/local/bin/lua51/lua is a Lua interpreter... yes
checking for lua version... Hello Lua 5.1!
5.1
checking for lua platform... unknown
checking for lua script directory... ${prefix}/share/lua/5.1
checking for lua module directory... ${exec_prefix}/lib/lua/5.1
checking if LUA_VERSION is defined... yes
checking lua.h usability... no
checking lua.h presence... no
checking for lua.h... no
checking lualib.h usability... no
checking lualib.h presence... no
checking for lualib.h... no
checking lauxlib.h usability... no
checking lauxlib.h presence... no
checking for lauxlib.h... no
checking luaconf.h usability... no
checking luaconf.h presence... no
checking for luaconf.h... no
checking for Lua headers in... /usr/local/include/lua51
checking lua.h usability... yes
checking lua.h presence... yes
checking for lua.h... yes
checking lualib.h usability... yes
checking lualib.h presence... yes
checking for lualib.h... yes
checking lauxlib.h usability... yes
checking lauxlib.h presence... yes
checking for lauxlib.h... yes
checking luaconf.h usability... yes
checking luaconf.h presence... yes
checking for luaconf.h... yes
checking for Lua header version... 5.1
checking if Lua header version matches 5.1... yes
checking if LUA_VERSION is defined... yes
checking for library containing lua_load... no
configure: error: cannot find libs for specified LUA_LIB
But I have Lua instaled:
# pkg version | grep lua
lua-5.1.5_6 =
lua-mode.el-1.26_1 =
lua52-5.2.3_2 =
And
# ls /usr/local/lib/lua51/
liblua-5.1.so.1 liblua.a liblua.so
Can You help me, pleas!
$ ./telegram -k tg.pub
Telegram-client version 0.01-beta, Copyright (C) 2013 Vitaly Valtman
Telegram-client comes with ABSOLUTELY NO WARRANTY; for details type show_license'. This is free software, and you are welcome to redistribute it under certain conditions; type
show_license' for details.
[/home/akshay/.telegram] created
[/home/akshay/.telegram/downloads] created
Telephone number (with '+' sign): +919xxxxxxxxx
*** phone registered
*** sending code
*** send_code: dc_num = 4
Code from sms: xxxxx
*** error_code = 400, error = PHONE_NUMBER_UNOCCUPIED
telegram: queries.c:605: sign_in_on_error: Assertion `0' failed.
Signal 6 received
./telegram(print_backtrace+0x1c)[0x40cadc]
./telegram(sig_handler+0x28)[0x40cb28]
/lib/x86_64-linux-gnu/libc.so.6(+0x370b0)[0x7f4d827ed0b0]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x37)[0x7f4d827ed037]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x148)[0x7f4d827f0698]
/lib/x86_64-linux-gnu/libc.so.6(+0x2fe03)[0x7f4d827e5e03]
/lib/x86_64-linux-gnu/libc.so.6(+0x2feb2)[0x7f4d827e5eb2]
./telegram[0x41c053]
./telegram(query_error+0x190)[0x421ad0]
./telegram(process_rpc_message+0x231)[0x41b841]
./telegram(rpc_execute+0x25f)[0x41bccf]
./telegram(try_rpc_read+0x9e)[0x4137ee]
./telegram(connections_poll_result+0xa8)[0x413d58]
./telegram(net_loop+0xea)[0x40d7ca]
./telegram(do_send_code_result+0xa8)[0x4229b8]
./telegram(loop+0x475)[0x40e835]
./telegram(main+0x6d)[0x40c01d]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7f4d827d7ea5]
./telegram[0x40c04d]
$ ./telegram -k tg.pub
Telegram-client version 0.01-beta, Copyright (C) 2013 Vitaly Valtman
Telegram-client comes with ABSOLUTELY NO WARRANTY; for details type show_license'. This is free software, and you are welcome to redistribute it under certain conditions; type
show_license' for details.
Telephone number (with '+' sign): +919xxxxxxxxx
*** phone not registered
User is not registered. Do you want to register? [Y/n] y
Ok, starting registartion.
Name: Akshay S Dinesh
Name: asdofindia
*** sending code
*** send_code: dc_num = 4
Code from sms: xxxxx
stats
It would be nice if the application support HTTP proxy configuration.
[1 unread]> telegram: binlog.c:690: replay_log_event: Assertion `C->user_list[i].user_id != user' failed.
Signal 6 received
telegram(print_backtrace+0x1c)[0x40da2c]
telegram[0x40da78]
/lib64/libc.so.6(+0x38350)[0x7fbce2fc4350]
/lib64/libc.so.6(gsignal+0x35)[0x7fbce2fc42d5]
/lib64/libc.so.6(abort+0x148)[0x7fbce2fc5758]
/lib64/libc.so.6(+0x31392)[0x7fbce2fbd392]
/lib64/libc.so.6(+0x31442)[0x7fbce2fbd442]
telegram(replay_log_event+0x48f2)[0x437932]
telegram(add_log_event+0x8a)[0x43830a]
telegram(work_update+0xae3)[0x418873]
telegram(work_updates+0xd6)[0x41a066]
telegram(work_packed+0x189)[0x41ae49]
telegram(process_rpc_message+0x211)[0x41b391]
telegram(rpc_execute+0x25f)[0x41b78f]
telegram(try_rpc_read+0x9e)[0x4140de]
telegram(connections_poll_result+0xa8)[0x414598]
telegram(net_loop+0xea)[0x40e70a]
telegram(main_loop+0x13)[0x40e833]
telegram(loop+0x1d5)[0x40f4f5]
telegram(main+0x5c)[0x40cf8c]
/lib64/libc.so.6(__libc_start_main+0xf5)[0x7fbce2fb09b5]
telegram[0x40cfbd]
Subj.
Nobody like's trash in their home folder.
Hi! i don't have a smartphone, its required register via smarphone or can register me via CLI for Telegram?
tg-master$ make
gcc -g -O2 -DHAVE_CONFIG_H -Wall -Wextra -Werror -Wno-deprecated -fno-strict-aliasing -fno-omit-frame-pointer -ggdb -I. -I. -c main.c -o main.o
main.c: In function ‘parse_config’:
main.c:266:3: error: passing argument 3 of ‘config_lookup_int’ from incompatible pointer type [-Werror]
/usr/include/libconfig.h:235:26: note: expected ‘long int ’ but argument is of type ‘int *’
cc1: all warnings being treated as errors
make: ** [main.o] Error 1
tg-master$
Building on Ubuntu 12.04.3 LTS x86_64
[12:22] Chat [#реформы] changed list: now 9 members
telegram: mtproto-client.c:980: work_update: Assertion `fetch_int () == 0x7841b415' failed.
Signal 6 received
telegram(print_backtrace+0x1c)[0x40ccbc]
telegram[0x40cd08]
/lib64/libc.so.6(+0x37c90)[0x7f02bc27fc90]
/lib64/libc.so.6(gsignal+0x35)[0x7f02bc27fc15]
/lib64/libc.so.6(abort+0x17b)[0x7f02bc28108b]
/lib64/libc.so.6(+0x30c7e)[0x7f02bc278c7e]
/lib64/libc.so.6(+0x30d22)[0x7f02bc278d22]
telegram(work_update+0x1e26)[0x418b36]
telegram(get_difference_on_answer+0x24d)[0x424b9d]
telegram(query_result+0x91)[0x41f331]
telegram(process_rpc_message+0x211)[0x419e81]
telegram(rpc_execute+0x25f)[0x41a26f]
telegram(try_rpc_read+0x9e)[0x41301e]
telegram(connections_poll_result+0xb8)[0x4134d8]
telegram(net_loop+0xfb)[0x40d9db]
telegram(main_loop+0x13)[0x40daf3]
telegram(loop+0x1ab)[0x40e7ab]
telegram(main+0x5c)[0x40c26c]
/lib64/libc.so.6(__libc_start_main+0xed)[0x7f02bc26c60d]
telegram[0x40c29d]
Hi,
From command line, The messages are not going. Interactive is working fine.
echo "msg Jobin_J hello" |./telegram -k tg.pub
Telegram-client version 0.01-beta, Copyright (C) 2013 Vitaly Valtman
Telegram-client comes with ABSOLUTELY NO WARRANTY; for details type show_license'. This is free software, and you are welcome to redistribute it under certain conditions; type
show_license' for details.
msg Jobin_J hello
Bad user/chat id
User Jobin J: 3 unread
Actually, when a user writes in a group chat it appears as:
"Named channel " user#12345656 >>> message
It would be nice to have that user # translated to real username to better understand the conversations
[15:18] User Кирилл [kirillbashik] Баш updated profile photo
telegram: structures.c:51: fetch_file_location: Assertion `x == 0x53d69076' failed.
Signal 6 received
./telegram(print_backtrace+0x1c)[0x40b2ec]
./telegram[0x40b338]
/lib64/libc.so.6(+0x37c90)[0x7f5e52afcc90]
/lib64/libc.so.6(gsignal+0x35)[0x7f5e52afcc15]
/lib64/libc.so.6(abort+0x17b)[0x7f5e52afe08b]
/lib64/libc.so.6(+0x30c7e)[0x7f5e52af5c7e]
/lib64/libc.so.6(+0x30d22)[0x7f5e52af5d22]
./telegram[0x422e91]
./telegram(work_update+0x1b9a)[0x41615a]
./telegram(get_difference_on_answer+0x23d)[0x4222dd]
./telegram(query_result+0x91)[0x41c171]
./telegram(process_rpc_message+0x211)[0x417791]
./telegram(rpc_execute+0xef)[0x417a0f]
./telegram(try_rpc_read+0x9e)[0x410fbe]
./telegram(connections_poll_result+0xb8)[0x411478]
./telegram(net_loop+0xfb)[0x40bf9b]
./telegram(main_loop+0x13)[0x40c0b3]
./telegram(loop+0x1c5)[0x40cd45]
./telegram(main+0x55)[0x40a905]
/lib64/libc.so.6(__libc_start_main+0xed)[0x7f5e52ae960d]
./telegram[0x40a935]
Linux documentation needs to be updated: https://github.com/vysheng/tg#linux
./configure
needs libconfig
installed. To install it under Ubuntu/Linux you can use the command sudo apt-get install libconfig8-dev
(source).
Hi, I would like to ask if is possible to add this feature to warn users when a new message arrives.
I would find it very useful because I usually leave the client open on an empty workspace instead of the one where I am working (I'm using a tiling WM) and I have to manually check the presence of new messages periodically.
I cannot find a way to guess the id/seqno number of a previously sent/received message (e.g. to forward it or to download a picture). Could it be possible to add an option to display id numbers in the output of the history command?
Is there a way to hide these messages?
Thanks!
Hi,
I had a problem installing in OSx when ./configure :
configure: error: No lua found. Try --disable-liblua
For those who has this problem is just:
brew install lua
and everything went fine.
Thank you guys for the client!
Hi,
When using CTRL-D to close a chat a traceback is printed instead of going up on level to the general list:
SIGSEGV received
telegram(print_backtrace+0x1c)[0x40cd0c]
telegram(sig_segv_handler+0x22)[0x40cd52]
/lib64/libc.so.6[0x3280235cb0]
telegram(interpreter_chat_mode+0x19)[0x40fc19]
telegram(interpreter+0xcd)[0x4100ad]
/lib64/libreadline.so.6(rl_callback_read_char+0x8e)[0x329ec2acee]
telegram(net_loop+0xdd)[0x40da1d]
telegram(loop+0x224)[0x40e834]
telegram(main+0x6d)[0x40c21d]
/lib64/libc.so.6(__libc_start_main+0xf5)[0x3280221d65]
telegram[0x40c24d]
I press in my phone "Close all sessions" and now i cant use Telegram on linux.
I see this message on terminal "#401 :SESSION_REVOKED".
What can i do to solve it?
Hi!
Before the unashamed request, thank you very much for developing this program. I enjoy using it daily on GNU/Linux (Gentoo) and, ocassionally, on FreeBSD, so happy user here.
Do you plan to support cygwin at any near/far future?[1]
Cheers
[1] Now build fails at its early stages, due to execinfo.h missing...
would be very useful if it were able to send msgs like
./telegram msg << user >> << txt >>
this way would be able to send messages with one command :-)
The debian/watch file points to the tag page to look for new versions:
Line 4 in b97769b
The current version is 0.01 so there should be a tag for it:
I am planning to create a Debian package for the Ubuntu software site getdeb.net
A working watch file would mean that new versions are found easily.
Can't build on armv6l,
mtproto-common.h:316:3: error: impossible constraint in 'asm'
I found out [1] that you can show emoji characters installing ancient fonts. This could be added to the Readme.
sudo apt-get install ttf-ancient-fonts
cheers.
Hi vysheng
When I try to send files it can't get through paths containing whitespaces, i.e. :
send_photo User /home/gabriel/My Pics Dir/one_photo.jpg
No such file '/home/gabriel/My'
The autocompletion works, but it doesn't escape whitespaces when I try to send the file.
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.