Giter Site home page Giter Site logo

keshavbhatt / colorpicker Goto Github PK

View Code? Open in Web Editor NEW
75.0 7.0 10.0 1.45 MB

Powerful screen ColorPicker/Chooser application for Linux Desktop

License: MIT License

QMake 4.65% C++ 91.58% Roff 3.78%
color-picker webdevelopment artists qt5 qcolordialog linux-app screen-picker colorpicker linux-desktop qcolor

colorpicker's Introduction

I'm Keshav Bhatt an independent, Open-source application developer from the northern region of India.

My main focus since introduced to FOSS is on developing applications targeting Linux Desktop Operating systems. I have been using FOSS since I was in 10th grade since year 2010, the first OS which attracted my focus toward application development was Ubuntu 10.10 Maverick Meerkat.

Most of my work can be found on(not limited to) these locations:

  • Github: Here I host most (not all) of my opensource projects
  • Snap Store: Publish application that I develop for Linux Desktop
  • Flathub: Publish application that I develop for Linux Desktop
  • Ktechpit: Website I use to publish work that I am doing and about other random stuff

Currently, I work at @Zextras as Software Developer. Zextras is known for providing Private, Secure E-mail and Collaboration suite to the world and is commited to provide its users the freedom and ownership of their data that they deserve in corporate communication.

Explore more at: https://www.zextras.com/

Interesting, show me more

I completed my graduation in Biological Science (B.Sc) in the year 2015 and had a professional graduate degree in Education (B.Ed) in the year 2019. Currently, I am pursuing my post-graduation degree in Chemistry (M.Sc). I also have a foundation level diploma in Computer Applications ‘O’ Level by NIELIT.

Know further about me here

➿ Get in Loop

💰 Make me rich

Thanks, If you ever donated me. 😃

📊 Some stats of my profile

Keshav's github stats

Top Langs

Visitor Badge

colorpicker's People

Contributors

djmattyg007 avatar f9kill avatar keshavbhatt avatar sonulohani avatar sudipm-mukherjee 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

colorpicker's Issues

Add instructions to readme on how to compile manually

I don't use snap, and would prefer to just compile this software manually. I would appreciate it if you could add some instructions on how to compile it, and the software's dependencies, so that I can create an AUR package.

ColorPicker segfaults on all Ubuntu releases

On all Ubuntu releases ColorPicker ends in a segfault with a coredump.

This is the full trace from the coredump:

(gdb) bt full
#0  0x00007f91f043390c in QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::operator-> (this=<optimized out>)
    at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:118
No locals.
#1  qGetPtrHelper<QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > > (ptr=...) at global/qglobal.h:1149
No locals.
#2  QObject::d_func (this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobject.h:132
No locals.
#3  QObjectPrivate::get (o=<optimized out>) at kernel/qobject_p.h:355
No locals.
#4  doActivate<false> (sender=0x0, signal_index=9, argv=0x7ffe147eccf0) at kernel/qobject.cpp:3807
        sp = <optimized out>
        signal_spy_set = <optimized out>
        empty_argv = {0x562c04ee4790}
        senderDeleted = <optimized out>
#5  0x00007f91f042ca37 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f91f0d6f8e0 <QGuiApplication::staticMetaObject>, local_signal_index=local_signal_index@entry=1, 
    argv=argv@entry=0x7ffe147eccf0) at kernel/qobject.cpp:3985
        signal_index = <optimized out>
#6  0x00007f91f07caf04 in QGuiApplication::screenAdded (this=<optimized out>, _t1=<optimized out>, _t1@entry=0x562c04eefb30) at .moc/moc_qguiapplication.cpp:389
        _a = {0x0, 0x7ffe147ecce8}
#7  0x00007f91f07adc6c in QWindowSystemInterface::handleScreenAdded (ps=ps@entry=0x562c04ee43d0, isPrimary=<optimized out>) at kernel/qwindowsysteminterface.cpp:826
        screen = 0x562c04eefb30
#8  0x00007f91eced9830 in QXcbConnection::initializeScreens (this=this@entry=0x562c04ec8b50) at qxcbconnection_screens.cpp:413
        screen = 0x562c04ee43d0
        __for_range = @0x562c04ec8e40: {<QListSpecialMethods<QXcbScreen*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = std::atomic<int> = { -1 }}}, 
                alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x562c04ee4730}, d = 0x562c04ee4730}}
        __for_begin = <optimized out>
        __for_end = <optimized out>
        it = {data = 0x562c04ed2874, rem = 0, index = 8160}
        xcbScreenNumber = <optimized out>
        primaryScreen = <optimized out>
#9  0x00007f91eceaed09 in QXcbConnection::QXcbConnection (this=0x562c04ec8b50, nativeInterface=<optimized out>, canGrabServer=<optimized out>, defaultVisualId=<optimized out>, 
    displayName=<optimized out>) at qxcbconnection.cpp:103
        focusInDelay = <optimized out>
        focusInDelay = <optimized out>
#10 0x00007f91eceb2642 in QXcbIntegration::QXcbIntegration (this=this@entry=0x562c04ec8a90, parameters=..., argc=@0x7ffe147ed3bc: 1, argv=argv@entry=0x7ffe147ed6e8)
    at ../../../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:138
        displayName = <optimized out>
        noGrabArg = <optimized out>
        doGrabArg = <optimized out>
        underDebugger = <optimized out>
        conn = 0xcbeaf66c1d1ba200
        numParameters = 0
        canNotGrabEnv = false
        displayName = <optimized out>
        noGrabArg = <optimized out>
        doGrabArg = <optimized out>
        underDebugger = <optimized out>
        numParameters = <optimized out>
        conn = <optimized out>
        j = <optimized out>
        i = <optimized out>
        arg = <optimized out>
        ok = <optimized out>
        i = <optimized out>
        display = <optimized out>
        qt_category_enabled = <optimized out>
        qt_category_enabled = <optimized out>
#11 0x00007f91f1449519 in QXcbIntegrationPlugin::create (this=<optimized out>, system=..., parameters=..., argc=@0x7ffe147ed3bc: 1, argv=0x7ffe147ed6e8) at qxcbmain.cpp:56
        xcbIntegration = <optimized out>
#12 0x00007f91f07cf461 in init_platform (argv=<optimized out>, argc=@0x7ffe147ed3bc: 1, platformThemeName=..., platformPluginPath=..., pluginNamesWithArguments=...)
    at kernel/qguiapplication.cpp:1223
        arguments = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = std::atomic<int> = { -1 }}}, 
                  alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x562c04eb8a70}, d = 0x562c04eb8a70}}, <No data fields>}
        name = {d = 0x562c04eb4050}
        argumentsKey = {d = 0x562c04eb89e0}
        pluginArgument = @0x562c04eb4090: {d = 0x562c04eb4050}
        __for_range = @0x7ffe147ed0d0: {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {
                      _q_value = std::atomic<int> = { -1 }}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x562c04eb4080}, d = 0x562c04eb4080}}, <No data fields>}
        __for_begin = <optimized out>
        __for_end = <optimized out>
        platformArguments = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {
                      _q_value = std::atomic<int> = { -1 }}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x562c04e4a9d0 <QListData::shared_null>}, 
              d = 0x562c04e4a9d0 <QListData::shared_null>}}, <No data fields>}
        platformIntegration = <optimized out>
        plugins = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = std::atomic<int> = { -1 }}}, 
                  alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x562c04eb4080}, d = 0x562c04eb4080}}, <No data fields>}
        availablePlugins = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {
                      _q_value = std::atomic<int> = { -1 }}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x562c04eb81d0}, d = 0x562c04eb81d0}}, <No data fields>}
        themeNames = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = std::atomic<int> = { -1 }}}, 
                  alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x562c04eb89e0}, d = 0x562c04eb89e0}}, <No data fields>}
        plugins = <optimized out>
        platformArguments = <optimized out>
        availablePlugins = <optimized out>
        themeNames = <optimized out>
        platformIntegration = <optimized out>
        pluginArgument = <optimized out>
        __for_range = <optimized out>
        __for_begin = <optimized out>
        __for_end = <optimized out>
        arguments = <optimized out>
        name = <optimized out>
        argumentsKey = <optimized out>
        qt_category_enabled = <optimized out>
        qt_category_enabled = <optimized out>
        fatalMessage = <optimized out>
        themeName = <optimized out>
        __for_range = <optimized out>
        __for_begin = <optimized out>
        __for_end = <optimized out>
        themeName = <optimized out>
        __for_range = <optimized out>
        __for_begin = <optimized out>
        __for_end = <optimized out>
        nativeInterface = <optimized out>
        argument = <optimized out>
        __for_range = <optimized out>
        __for_begin = <optimized out>
        __for_end = <optimized out>
        equalsPos = <optimized out>
        name = <optimized out>
        value = <optimized out>
#13 QGuiApplicationPrivate::createPlatformIntegration (this=0x562c04eb3ae0) at kernel/qguiapplication.cpp:1477
        platformPluginPath = {d = 0x562c04e4a9a0 <QArrayData::shared_null>}
        platformName = {d = 0x562c04eb4020}
        sessionType = {d = 0x7f91f04f8800}
        platformNameEnv = {d = 0x7f91f04f8800}
        platformThemeName = {d = 0x562c04e4a9a0 <QArrayData::shared_null>}
        icon = {d = 0x562c04e4a9a0 <QArrayData::shared_null>}
        j = <optimized out>
#14 0x00007f91f07d0ac0 in QGuiApplicationPrivate::createEventDispatcher (this=<optimized out>) at kernel/qguiapplication.cpp:1494
No locals.
#15 0x00007f91f0400435 in QCoreApplicationPrivate::init (this=this@entry=0x562c04eb3ae0) at kernel/qcoreapplication.cpp:835
        q = <optimized out>
        appPaths = 0x0
        manualPaths = 0x0
        thisThreadData = 0x562c04eb3c50
#16 0x00007f91f07d3a3f in QGuiApplicationPrivate::init (this=this@entry=0x562c04eb3ae0) at kernel/qguiapplication.cpp:1523
        loadTestability = <optimized out>
        pluginList = {<QListSpecialMethods<QByteArray>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = std::atomic<int> = { -1 }}}, alloc = 0, 
                begin = 0, end = 0, array = {0x0}}, d = 0x562c04e4a9a0 <QArrayData::shared_null>}, d = 0x562c04e4a9a0 <QArrayData::shared_null>}}
        session_id = {d = 0x562c04eb3970}
        session_key = {d = 0x562c04eb3e70}
        s = {d = 0x562c04eb3ba8}
        j = <optimized out>
        envPlugins = {d = 0x7ffe147ed2e0}
        q = <optimized out>
#17 0x00007f91f0efb565 in QApplicationPrivate::init (this=0x562c04eb3ae0) at kernel/qapplication.cpp:513
No locals.
#18 0x00007f91f0efb65f in QApplication::QApplication (this=this@entry=0x7ffe147ed430, argc=@0x7ffe147ed3bc: 1, argc@entry=@0x7ffe147ed3bc: <optimized out>, argv=<optimized out>, 
    _internal=_internal@entry=331522) at kernel/qapplication.cpp:501
        d = <optimized out>
        d = <optimized out>
#19 0x0000562c04dd8852 in main (argc=<optimized out>, argv=<optimized out>) at /build/color-picker-Fms7Dj/color-picker-1.0.3/src/main.cpp:6
        a = {<QGuiApplication> = {<QCoreApplication> = {<QObject> = {_vptr.QObject = 0x7f91f1415e68 <vtable for QApplication+16>, static staticMetaObject = {d = {superdata = {
                      direct = 0x0}, stringdata = 0x7f91f05d3b00 <qt_meta_stringdata_QObject>, data = 0x7f91f05d39e0 <qt_meta_data_QObject>, 
                    static_metacall = 0x7f91f0432010 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {
                  d = 0x562c04eb3ae0}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f91f05d6aa0 <qt_meta_stringdata_Qt>, 
                    data = 0x7f91f05d3c20 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {
                    direct = 0x7f91f0684180 <QObject::staticMetaObject>}, stringdata = 0x7f91f05cfec0 <qt_meta_stringdata_QCoreApplication>, 
                  data = 0x7f91f05cfda0 <qt_meta_data_QCoreApplication>, 
                  static_metacall = 0x7f91f03fae30 <QCoreApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, 
              static self = 0x0}, static staticMetaObject = {d = {superdata = {direct = 0x7f91f068ca60 <QCoreApplication::staticMetaObject>}, 
                stringdata = 0x7f91f0ca9dc0 <qt_meta_stringdata_QGuiApplication>, data = 0x7f91f0ca9b40 <qt_meta_data_QGuiApplication>, 
                static_metacall = 0x7f91f07d2250 <QGuiApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}}, 
          static staticMetaObject = {d = {superdata = {direct = 0x7f91f0d6f8e0 <QGuiApplication::staticMetaObject>}, stringdata = 0x7f91f12dee20 <qt_meta_stringdata_QApplication>, 
              data = 0x7f91f12deca0 <qt_meta_data_QApplication>, static_metacall = 0x7f91f0ef9a30 <QApplication::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, 
              relatedMetaObjects = 0x0, extradata = 0x0}}}
        w = {<QMainWindow> = {<QWidget> = {<QObject> = {_vptr.QObject = 0x30, static staticMetaObject = {d = {superdata = {direct = 0x0}, 
                    stringdata = 0x7f91f05d3b00 <qt_meta_stringdata_QObject>, data = 0x7f91f05d39e0 <qt_meta_data_QObject>, 
                    static_metacall = 0x7f91f0432010 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {
                  d = 0x562c04eb3970}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f91f05d6aa0 <qt_meta_stringdata_Qt>, 
                    data = 0x7f91f05d3c20 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, <QPaintDevice> = {_vptr.QPaintDevice = 0x80, 
                painters = 81, reserved = 0x50}, static staticMetaObject = {d = {superdata = {direct = 0x7f91f0684180 <QObject::staticMetaObject>}, 
                  stringdata = 0x7f91f12e29c0 <qt_meta_stringdata_QWidget>, data = 0x7f91f12e22e0 <qt_meta_data_QWidget>, 
                  static_metacall = 0x7f91f0f396f0 <QWidget::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, 
              data = 0x562c04eb3960}, static staticMetaObject = {d = {superdata = {direct = 0x7f91f1417280 <QWidget::staticMetaObject>}, 
                stringdata = 0x7f91f12fce00 <qt_meta_stringdata_QMainWindow>, data = 0x7f91f12fcc00 <qt_meta_data_QMainWindow>, 
                static_metacall = 0x7f91f1059c10 <QMainWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, 
                relatedMetaObjects = 0x7f91f1420ff0 <qt_meta_extradata_QMainWindow>, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {
                direct = 0x7f91f1420fc0 <QMainWindow::staticMetaObject>}, stringdata = 0x562c04e45b80 <qt_meta_stringdata_MainWindow>, 
              data = 0x562c04e457e0 <qt_meta_data_MainWindow>, static_metacall = 0x562c04de2ff0 <MainWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, 
              relatedMetaObjects = 0x0, extradata = 0x0}}, ui = 0x90, _ui_pattern = {<Ui_pattern_widget> = {verticalLayout = 0x7f91efd2cd26 <__GI___libc_realloc+598>, 
              horizontalLayout = 0x2, label = 0x7f91efe82ac0 <main_arena>, factor_spin = 0x0, 
              scrollArea = 0x7f91f06911d8 <(anonymous namespace)::Q_QGS_resourceGlobalData::innerFunction()::holder+8>, scrollAreaWidgetContents_2 = 0x7ffe147ed580, 
              verticalLayout_2 = 0x6, gridLayout = 0x562c04eb1030}, <No data fields>}, 
          colorDialog = 0x7f91f06911d8 <(anonymous namespace)::Q_QGS_resourceGlobalData::innerFunction()::holder+8>, setting_path = {d = 0x7ffe147ed5a0}, settings = {<QObject> = {
              _vptr.QObject = 0xe, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f91f05d3b00 <qt_meta_stringdata_QObject>, 
                  data = 0x7f91f05d39e0 <qt_meta_data_QObject>, static_metacall = 0x7f91f0432010 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, 
                  relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x562c04eb3970}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, 
                  stringdata = 0x7f91f05d6aa0 <qt_meta_stringdata_Qt>, data = 0x7f91f05d3c20 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, 
            static staticMetaObject = {d = {superdata = {direct = 0x7f91f0684180 <QObject::staticMetaObject>}, stringdata = 0x7f91f05c9960 <qt_meta_stringdata_QSettings>, 
                data = 0x7f91f05c9820 <qt_meta_data_QSettings>, static_metacall = 0x7f91f036b4d0 <QSettings::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, 
                relatedMetaObjects = 0x0, extradata = 0x0}}}, settingsWidget = 0x7, 
          pattern_widget = 0x7f91f06911d0 <(anonymous namespace)::Q_QGS_resourceGlobalData::innerFunction()::holder>, _patter_factor = -266079365, screenPicker = 0x1, 
          cDialog = 0xcbeaf66c1d1ba200}

The issue is not seen in Debian as LTO is disabled in Debian.

cant't click and select

i can't click and select color.
whenever i hover cursor to color this area, i can't click and select color.

image

Pressing Escape key on a newly opened window puts the UI in this irrecoverable state

Hi, beautiful job with this tool. I am loving it. Thank you for your work.

I am encountering a problem while using it though.

how to reproduce
Press Escape key when the window opens after launch.

A major part of the UI in this has just disappeared from LHS. I could not go back to the original state from this.

Screenshot from 2020-11-21 05-33-32

It originally started up like this:
Screenshot from 2020-11-21 05-37-44

Basic system info:

Screenshot from 2020-11-21 05-42-15

Will provide more details if needed. Please drop a note in reply. Thank you!

Clarify wording on "temporary" swatches

Englsh isn't my native language, but I'm pretty sure "temporary" and "permanent" are opposites... So, I am confused by the instruction for temporary swatches, where it says:

Click "Add to Temporary Swatch" to save color permanently

Perhaps you can consider changing it to something like this?

Click "Add to My Swatches" to save color permanently

Package for Debian.

Hi,

I liked your program and I am interested in packaging it for Debian, it would be interesting to version release 1.0, 2.0 ..., so that the Debian watch system can follow the releases of new versions.

thanks

RGBA?

I love this color picker but I'm a bit confuse. What's ARGB? is it the same than RGBA which includes transparency? I was looking for a funtional color picker with transparency but... I thought this one was, but I'm not sure. Because when I play with the Alpha Channel after choosing my color and paste it into the editor,the editor interpreted it as an completely different color, it looks like the first two Hex decimals should go at the end instead of the beginning. But then, maybe I'm the one who is wrong and ARGB is not the same than RGBA

Missing Qt libraries

andrei@X570-GAMING-X:~$ color-picker 
/snap/color-picker/7/bin/desktop-launch: line 41: /home/andrei/.config/user-dirs.dirs: Permission denied
/snap/color-picker/7/bin/desktop-launch: line 284: [: /home/andrei/../../../Рабочий: binary operator expected
/snap/color-picker/7/bin/desktop-launch: line 520: /snap/color-picker/7/qt551/flavor-select: No such file or directory
color-picker: error while loading shared libraries: libQt5Widgets.so.5: cannot open shared object file: No such file or directory
andrei@X570-GAMING-X:~$ 
color-picker                     1.0                         7       latest/stable    keshavnrj           -

Create new release

It would be great if a new release could be created that incorporates the recent updates. It's the last thing stopping me from creating an AUR package.

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.