Coder Social home page Coder Social logo

rnayabed / rangoli Goto Github PK

View Code? Open in Web Editor NEW
238.0 4.0 9.0 20.57 MB

Free, Open Source, Lightweight, Cross-platform Software for Royal Kludge Keyboards

Home Page: https://rnayabed.github.io/rangoli_website

License: GNU General Public License v3.0

CMake 2.35% C 1.24% C++ 62.08% Qt Script 0.96% QML 32.71% Python 0.65%
cross-platform qml qt qt6 royal-kludge c-plus-plus keyboard material-design

rangoli's People

Contributors

cben avatar hramrach avatar rnayabed 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

rangoli's Issues

RK108

Hi!

I have got my self one RK108.

Your wonderful software does not support it and I was wondering if I can do something to help you determine the connecting protocol.

Thanks!

Andrea

Keyboard bricked after use - [VID/PID TBD]

i installed it and messed around a little bit and it wasnt quite doing what it was supposed to so im like i guess i'll just uninstall it but i have now been sat here trying to get this software or any other rk software to detect my keyboard (which has not happened once) and it does not type or anything at all. i plug it in, the lights come on i can even change the lighting on it i can reset the keyboard with fn + space and yet i cant do anything else on my keyboard. ive been trying to update drivers, reset my keyboard, restarting my computer multiple times, fucking ANYTHING that any reddit thread or article or video has said and NOTHING has fixed it. nothing will detect my keyboard and my keyboard will no longer type, all of this happening after installing this software. i dont know what the fuck else i can do but buy an entirely new keyboard to replace it. fuck this bullshit

RK61(wired only) bricked after sometime of using rangoli

Hi, my RK61 keyboard is showing no sign of life (no rgb, no input, no detection in lsusb or even on Windows) after using Rangoli for some time. The app was working fine when suddenly the rgb lights went off and the keyboard stopped working.

Here are rangoli logs of the time it happened.

[25/05/2023] [18:31:10] [DEBUG] : HID Device found:  /dev/hidraw0
[25/05/2023] [18:31:10] [DEBUG] : HID Device found:  /dev/hidraw0
[25/05/2023] [18:31:10] [DEBUG] : HID Device found:  /dev/hidraw0
[25/05/2023] [18:31:10] [DEBUG] : HID Device found:  /dev/hidraw0
[25/05/2023] [18:31:10] [DEBUG] : HID Device found:  /dev/hidraw0
[25/05/2023] [18:31:10] [DEBUG] : HID Device found:  /dev/hidraw0
[25/05/2023] [18:38:53] [WARNING] : The X11 connection broke (error 1). Did the X11 server die?
[25/05/2023] [18:38:53] [FATAL] : QThread: Destroyed while thread is still running

I'm not sure if this issue is related to this app or it happened due to completely different reason but it would be great if I can get some assistance to fix it or some directions on why it could happen so I can research myself on fixing my keyboard.

I understand the README states no responsibility if keyboard is bricked but I'd be glad if someone can help me. Feel free to close the issue if this doesn't belong here.

Thank you.

Potential issue with udev rules

Hello,

I'm just starting to use rangoli and first thanks a lot for this software!

My user has limited sudo permissions and creating the udev rules is not one (maybe I should change that..) so I ran rangoli with root first, it created the rules file and if I restart the app with root it does not ask to create it again, but if I start rangoli with my user it still tries to run the script which fails and blocks there... And indeed if I set the config file of my user similar to root, it loads fine.

Thanks!

Keyboard bricked (rk68)

cant provide the PID as the keyboard is not even recognized in any system, its the new one tho, came yesterday. After using the software changing the modes for some minutes, said "more permissions required" or something like that and it bricked, keys are not working, changing the keyboard modes in the keys are all over the place, no system even recognize him. Leaving here the warning for rk68 users.

RK84RGB (258a:0059 [?]) bricked.

Hello, I came across this github on a reddit comment recommending it over the default software of Royal Kludge and decided I should try it out. I just got my Royal Kludge RK84 RGB today and after plugging it in and playing around a bit with the on-board lights and modes, I decided to open the Rangoli software in hopes of easily changing the RGB lights. It detected my keyboard fine and I went to click on some rgb modes to customize it and notice upon selecting one it doesn't mirror my keyboard.

I then noticed clicking FN + any of the buttons before to change lights didn't work at all and when I tried to type, nothing happens. I exited the program and same thing so I restarted my PC and it says USB device not recognized, Rangoli software also cannot detect the keyboard anymore, checking the devices tab says Unknown USB Device (Device Descriptor Request Failed). Trying it on wireless mode (both 2.4 ghz and bluetooth) also doesn't do anything (no lights on and whatnot), and trying to connect it to the 2.4ghz dongle (the pc does detect the dongle) and bluetooth doesn't connect

Is there a way to reset the keyboard somehow? Maybe it just malfunctioned trying to connect to the software and locked up somehow? I didn't download any firmwares or anything on it. FN + Spacebar to reset it according to their user manual doesn't do anything either

RK61RGB ISO Return (0258a:0065) R and G values swapped

Expected behaviour: The red value changes the amount of red in the color and the green Value changes the amount of green in the color.

Actual behaviour: Green value changes the amount of red and red value changes the amount of green.

Versions tested: 1.0, 2.0RC

RK918 RGB Not Supported

Keyboard is not recognised by software, I would really appriciate it if it could be added as its near enough the only reason i keep windows installed now

Allow multiple protocols

Right now, rangoli is "hardwired" to use only one protocol, as the presence of multiple protocols was not known before.

Apparently, there are boards with multiple Vendor IDs (#13, #14, #22), and from the .pcap files seen in #13, it is assumed that the protocol used is different for models with different vendor ID.

Therefore, the code needs to be refactored to allow multiple protocols. This is currently halted, unless one of the protocols is sucessfully reverse engineered. Currently, only 0x258a boards' protocol is known.

[MacOS] RK71 (0x258a:0x0069) not detected

I've installed the MacOS installer app. On opening the app it shows Unable to open keyboards list. I saw that the issue was resolved but I guess it was not compiled into a release. Can you please update the release binaries? Thanks.

OS: MacOS Monterey
Keybaord: RK71

bad file installation locations

The program installs everything into BINDIR, basically installing a self-contained portable package into /usr/bin.

While this works distributions want packaged programs to have data (keyboards) in DATADIR, and non-user executables (udev-rule-writer) in LIBEXECDIR.

To work inside a distribution the code needs to be changed to look in an alternative location for files in the case when the program is not installed as portable package.

crash: terminated by signal SIGSEGV (Address boundary error)

Hi,
I just gave your project a quick try but I'm not able to start it. It briefly shows the UI but then crashes:

Rangoli 2
Graphics: Hardware
Session DBus not running.
Application will not react to setting changes.
 Check your DBus installation.
Platform: "xcb"
Qt 6.5.2

ERROR: No native SystemTrayIcon implementation available.
Qt Labs Platform requires Qt Widgets on this setup.
Add 'QT += widgets' to .pro and create QApplication in main().

Register profiles
Load settings
Apply visual settings to Main Window
Set System theme
Show Linux udev prompt
Init HID Connection Worker
First time use
Refresh keyboards
HID Device found:  /dev/hidraw0
HID Device found:  /dev/hidraw0
HID Device found:  /dev/hidraw6
HID Device found:  /dev/hidraw9
HID Device found:  /dev/hidraw9
HID Device found:  /dev/hidraw9
HID Device found:  /dev/hidraw2
HID Device found:  /dev/hidraw3
HID Device found:  /dev/hidraw4
HID Device found:  /dev/hidraw5
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw1
HID Device found:  /dev/hidraw11
HID Device found:  /dev/hidraw12
HID Device found:  /dev/hidraw12
HID Device found:  /dev/hidraw12
HID Device found:  /dev/hidraw12
HID Device found:  /dev/hidraw12
HID Device found:  /dev/hidraw14
HID Device found:  /dev/hidraw14
HID Device found:  /dev/hidraw14
HID Device found:  /dev/hidraw14
HID Device found:  /dev/hidraw14
HID Device found:  /dev/hidraw14
HID Device found:  /dev/hidraw13
HID Device found:  /dev/hidraw13
HID Device found:  /dev/hidraw13
HID Device found:  /dev/hidraw7
HID Device found:  /dev/hidraw8
HID Device found:  /dev/hidraw8
HID Device found:  /dev/hidraw8
HID Device found:  /dev/hidraw8
HID Device found:  /dev/hidraw8
HID Device found:  /dev/hidraw8
HID Device found:  /dev/hidraw8
HID Device found:  /dev/hidraw8
HID Device found:  /dev/hidraw8
HID Device found:  /dev/hidraw10
render glyph failed err=13 face=0x7fef98133b00, glyph=52
fish: Job 1, 'sudo ./build/src/rangoli' terminated by signal SIGSEGV (Address boundary error)

OS:

       /\         rtorrero@archill
      /  \        os     Arch Linux
     /\   \       host   X570 AORUS ULTRA -CF
    /      \      kernel 6.4.7-arch1-1
   /   ,,   \     uptime 2h 48m
  /   |  |  -\    pkgs   2203
 /_-''    ''-_\   memory 6161M / 64224M

Keyboard: RK84

Tried both the package in AUR and compiling it manually from this GH repo, both yield similar results. Any additional information I can give you?

RK61 hidapitester info

Not wanting to hijack #18, I'll just provide the information here. I have a RK61 60% with RBG connected via USB.

> lsusb | grep -i keyboard
Bus 001 Device 005: ID 258a:00f8 SINO WEALTH Bluetooth Keyboard

> ./hidapitester --vidpid 258a:00f8 --list-detail | grep path | uniq
  path: /dev/hidraw2
  path: /dev/hidraw3

> sudo ./hidapitester --open-path /dev/hidraw2 --length 65 --send-feature 0x0a,0x01,0x01,0x02,0x29,0x01,0x03,0x03,0x03,0,0,0,0x01,0x01
Opening device. path: /dev/hidraw2
Writing 65-byte feature report...wrote -1 bytes:
 0A 01 01 02 29 01 03 03 03 00 00 00 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00
Closing device

> ^hidraw2^hidraw3^

> sudo ./hidapitester --open-path /dev/hidraw3 --length 65 --send-feature 0x0a,0x01,0x01,0x02,0x29,0x01,0x03,0x03,0x03,0,0,0,0x01,0x01
Opening device. path: /dev/hidraw3
Writing 65-byte feature report...wrote 65 bytes:
 0A 01 01 02 29 01 03 03 03 00 00 00 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00
Closing device

RGB changed color (seemed to revert to the default setting IMHO) when using /dev/hidraw3

RK-H81 keyboard is not detected

Hi!
Rangoli doesn't detect RK-H81 with RGB lighting. Both on Windows and Linux. Seems like i've got one from the new batch that has another idProduct - "013e" instead of "0102".
Here's the output of "hidapitester --vidpid 258a:013E --list-detail" ("--vidpid 258a:0102 --list-detail" gives no output at all):

258A/013E: BY Tech - Gaming Keyboard
  vendorId:      0x258A
  productId:     0x013E
  usagePage:     0x0001
  usage:         0x0006
  serial_number:  
  interface:     0 
  path: /dev/hidraw7

258A/013E: BY Tech - Gaming Keyboard
  vendorId:      0x258A
  productId:     0x013E
  usagePage:     0x0001
  usage:         0x0080
  serial_number:  
  interface:     1 
  path: /dev/hidraw8

258A/013E: BY Tech - Gaming Keyboard
  vendorId:      0x258A
  productId:     0x013E
  usagePage:     0x000C
  usage:         0x0001
  serial_number:  
  interface:     1 
  path: /dev/hidraw8

258A/013E: BY Tech - Gaming Keyboard
  vendorId:      0x258A
  productId:     0x013E
  usagePage:     0xFF00
  usage:         0x0001
  serial_number:  
  interface:     1 
  path: /dev/hidraw8

258A/013E: BY Tech - Gaming Keyboard
  vendorId:      0x258A
  productId:     0x013E
  usagePage:     0x0001
  usage:         0x0006
  serial_number:  
  interface:     1 
  path: /dev/hidraw8

258A/013E: BY Tech - Gaming Keyboard
  vendorId:      0x258A
  productId:     0x013E
  usagePage:     0xFF00
  usage:         0x0001
  serial_number:  
  interface:     1 
  path: /dev/hidraw8

258A/013E: BY Tech - Gaming Keyboard
  vendorId:      0x258A
  productId:     0x013E
  usagePage:     0xFF00
  usage:         0x0001
  serial_number:  
  interface:     1 
  path: /dev/hidraw8

258A/013E: BY Tech - Gaming Keyboard
  vendorId:      0x258A
  productId:     0x013E
  usagePage:     0x0001
  usage:         0x0002
  serial_number:  
  interface:     1 
  path: /dev/hidraw8

258A/013E: BY Tech - Gaming Keyboard
  vendorId:      0x258A
  productId:     0x013E
  usagePage:     0x0001
  usage:         0x0001
  serial_number:  
  interface:     1 
  path: /dev/hidraw8

Support for Akko keyboard

I am using Akko 3068B multimode. Its software is not stable.

Can you add support for this keyboard?

Add RK855

Hi,

First of all, awesome project.

Is it possible to add support for RK855? My keyboard is working fine when connected to Ubuntu 22.10, but rangoli does not detect it.

Here is dmesg log when connecting the keyboard:

[  630.445163] usb 2-1.2: new full-speed USB device number 5 using ehci-pci
[  630.556549] usb 2-1.2: New USB device found, idVendor=0c45, idProduct=8018, bcdDevice= 1.12
[  630.556615] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  630.556622] usb 2-1.2: Product: USB DEVICE
[  630.556627] usb 2-1.2: Manufacturer: SONiX
[  630.560284] input: SONiX USB DEVICE as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/0003:0C45:8018.0003/input/input21
[  630.619122] hid-generic 0003:0C45:8018.0003: input,hidraw0: USB HID v1.11 Keyboard [SONiX USB DEVICE] on usb-0000:00:1d.0-1.2/input0
[  630.621781] input: SONiX USB DEVICE Consumer Control as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.1/0003:0C45:8018.0004/input/input22
[  630.681922] input: SONiX USB DEVICE System Control as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.1/0003:0C45:8018.0004/input/input23
[  630.682661] input: SONiX USB DEVICE Keyboard as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.1/0003:0C45:8018.0004/input/input24
[  630.683330] input: SONiX USB DEVICE Mouse as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.1/0003:0C45:8018.0004/input/input25
[  630.684462] input: SONiX USB DEVICE as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.1/0003:0C45:8018.0004/input/input26
[  630.686330] hid-generic 0003:0C45:8018.0004: input,hiddev0,hidraw1: USB HID v1.11 Keyboard [SONiX USB DEVICE] on usb-0000:00:1d.0-1.2/input1

RK S108 wired not detected

I image this is one of the keyboards that uses other software, just my luck.
Thanks for the software anyway.
I'll check back in the future.

Marcus

RK68 (258a:00a9) not working

The portable version of Rangoli for MacOS is unable to detect the keyboard.
Keyboard is a RK68 (PID: 00a9, VID: 258a)

I ran "hidapitester --vidpid 258a:00a9 --list-detail" as recommended and got the following path

IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/XHC1@14/XHC1@14000000/HS08@14300000/RK Bluetooth Keyboard@14300000/IOUSBHostInterface@1/AppleUserUSBHostHIDDevice

Unable to open keyboard list

Issue

Description : I open Rangoli and pops an error message saying "Fatal Error Occurred. Unable to open keyboard list". I tried wired and wireless modes and it throws the same error.
Model : RK 71 Wireless
Platform: MacOS Ventura

258a:49 not working

Hello,

I have a rebranded board by some local manufacturer that is no longer available for purchase, and it is recognized by the software as RK (probably correctly) but the communication fails.

Rangoli 2
Graphics: Hardware
Authorization required, but no authorization protocol specified
Platform: "xcb"
Qt 6.5.1

ERROR: No native SystemTrayIcon implementation available.
Qt Labs Platform requires Qt Widgets on this setup.
Add 'QT += widgets' to .pro and create QApplication in main().

ERROR: No native Menu implementation available.
Qt Labs Platform requires Qt Widgets on this setup.
Add 'QT += widgets' to .pro and create QApplication in main().

Register profiles
Load settings
Apply visual settings to Main Window
Set System theme
Init HID Connection Worker
Refresh keyboards
HID Device found: /dev/hidraw0
HID Device found: /dev/hidraw1
HID Device found: /dev/hidraw2
HID Device found: /dev/hidraw2
HID Device found: /dev/hidraw2
HID Device found: /dev/hidraw2
HID Device found: /dev/hidraw2
HID Device found: /dev/hidraw2
HID Device found: /dev/hidraw3
HID Device found: /dev/hidraw3
HID Device found: /dev/hidraw3
HID Device found: /dev/hidraw6
HID Device found: /dev/hidraw6
HID Device found: /dev/hidraw6
HID Device found: /dev/hidraw6
HID Device found: /dev/hidraw4
HID Device found: /dev/hidraw5
HID Device found: /dev/hidraw5
HID Device found: /dev/hidraw5
HID Device found: /dev/hidraw5
HID Device found: /dev/hidraw5
HID Device found: /dev/hidraw5
HID Device found: /dev/hidraw5
HID Device found: /dev/hidraw5
HID Device found: /dev/hidraw9
HID Device found: /dev/hidraw10
HID Device found: /dev/hidraw7
HID Device found: /dev/hidraw7
HID Device found: /dev/hidraw7
HID Device found: /dev/hidraw7
HID Device found: /dev/hidraw7
HID Device found: /dev/hidraw7
HID Device found: /dev/hidraw7
HID Device found: /dev/hidraw7
HID Device found: /dev/hidraw7
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
HID Device found: /dev/hidraw8
Add keyboard 258a:49
libpng warning: iCCP: known incorrect sRGB profile
Load keyboard 258a:49
Load colours from profile "Default Profile"
libpng warning: iCCP: known incorrect sRGB profile
Load settings from profile "Default Profile"
Clear custom colours for all key indexes
Clear all custom mapped keys for all key indexes
Save to keyboard 258a:49
Sending 10 feature reports to keyboard at HID path "/dev/hidraw5"
Each buffer is of size 65
Unable to send report 0

RK61 not detected

Hello,
{Windows}
I have an RK61 keyboard, which is listed as a supported device. However, the software is not detecting my keyboard. I've tried connecting it both via Bluetooth and wired, but it hasn't worked. Could you please look into this issue? Thank you.

Best regards,

image

Add RK71 3 mode

HID/PID 05ac:024f

Royal Kludge RK71 3 mode circa 2021. Works in RK software not detected in Linux or Windows using Rangoli.

Per App/Game profile

Change rgb/keybinds/macro's etc based on currently active application, like logitech ghub etc have.

RK61RGB not supported

Hi, please let me know what info you need to fold support in for this keeb. Thanks for your work, it's much appreciated.
I am using Ubuntu 20.04

Add RKG68 (0c45:8008)

This keyboard is being recognized by the app, but it isn't in the supported keyboards list.
PID 8008
Link to software: http://en.rkgaming.com/media/files/20210802/20210802183408_7863.zip

I'm using the v2.0 release candidate and I get this error message when I click on my keyboard:
"Failed to send feature report to keyboard. Make sure you have sufficient permissions."
I get this error even if I run the app as administrator.

Support MacOS < 11

I'm currently on macOS Mojave, and I am sadly not able to run the app

App not working on macOS Monterey; Says Insufficient Permissions, provide Input Monitoring permissions

Hi,

I am using a 15" MacBook Pro with Touch Bar and TouchID from 2016 running macOS Monterey. I have connected my Royal Kludge RK100 RGB with BT and 2.4G Wireless keyboard using the wire that came with it. The Rangoli app is recognising the keyboard properly but is unable to change its settings.

Every time I start the app, it prompts me to provide it Input Monitoring permissions through my laptop settings (System Preferences > Security & Privacy > Privacy > Input Monitoring). I have already done that and have tried restarting both the application and my laptop, yet this error does not go away.

I started the app and tried to change the RGB effect. The corresponding log file is attached below... Any idea how to rectify it?

Thanks in advance!

rangoli.log

Unsupported RK keyboard

Hey, I wanted to use Rangoli but saw that my keyboard wasn't on the list of supported ones. It's a RK100Pro but the PID is FA70
image

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.