Giter Club home page Giter Club logo

localconsole's People

Contributors

duraidabdul avatar hxperl avatar noahfetz 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  avatar  avatar  avatar

localconsole's Issues

No longer visible above presented view controllers

Version 1.11.0 causes the console to no longer sit on top of presented view controllers. Also when you tap the more menu you get:

[Presentation] Presenting view controller <_UIContextMenuActionsOnlyViewController: 0x7fb2bf605470> from detached view controller <LocalConsole.ConsoleViewController: 0x7fb2be27ecb0> is discouraged.

Are UI orientations supported?

Thanks for creating this useful library. I tested on an iPad app but the UI seems locked in portrait mode. Is there some way to enable auto rotation?

Input blocked on iPads without home button

When running on an iPad or iPad simulator that has no home button, if LCManager.shared.isVisible is true, all other input seems to be blocked. Touches don't get passed down.

Did a bit of debugging and it seems that when running on an iPad with no home button, the ConsoleWindow hit test will return a View when we're not expecting it to (would be expecting that function to be returning nil).

It's unclear to me why this would behave differently on different iPads, but maybe this makes sense to someone smarter than me?

"Share Text..." button causes application to crash.

The application crashes when I press the "Share Text..." button.

SwiftUI Life Cycle
iOS 15.7
iPad Pro (9.7")

2022-10-21 16:18:09.633928+0300 XXX[26460:1212498] invalid mode 'kCFRunLoopCommonModes' provided to CFRunLoopRunSpecific - break on _CFRunLoopError_RunCalledWithInvalidMode to debug. This message will only appear once per execution.
2022-10-21 16:18:52.754372+0300 XXX[26460:1212498] [Default] Task XXX[26460]/1#3 LF=0 couldn't find entitlement CopresenceCore.Entitlement.publicAPI error nil
2022-10-21 16:18:52.867519+0300 XXX[26460:1212498] *** Terminating app due to uncaught exception 'NSGenericException', reason: 'UIPopoverPresentationController (<UIPopoverPresentationController: 0x104b88760>) should have a non-nil sourceView or barButtonItem set before the presentation occurs.'
*** First throw call stack:
(0x182651d1c 0x199e76ee4 0x185183998 0x184b0ea6c 0x185189cf4 0x184c06234 0x184b21764 0x104888700 0x104889fc8 0x1048988ac 0x1048984fc 0x18260d0d4 0x1825ca5f8 0x1825dd250 0x1a2f14988 0x184ddfa88 0x184b78fc8 0x189e31d68 0x189d7c83c 0x189d621dc 0x100dd775c 0x100dd7800 0x10425c4d0)
libc++abi: terminating with uncaught exception of type NSException
dyld4 config: DYLD_LIBRARY_PATH=/usr/lib/system/introspection DYLD_INSERT_LIBRARIES=/Developer/usr/lib/libBacktraceRecording.dylib:/Developer/usr/lib/libMainThreadChecker.dylib:/Developer/Library/PrivateFrameworks/DTDDISupport.framework/libViewDebuggerSupport.dylib
*** Terminating app due to uncaught exception 'NSGenericException', reason: 'UIPopoverPresentationController (<UIPopoverPresentationController: 0x104b88760>) should have a non-nil sourceView or barButtonItem set before the presentation occurs.'
terminating with uncaught exception of type NSException

Ability to specify which features are accessible

Hello! This is such a cool little package thanks for making it.

I was wondering if you've considered making it possible to disable debug features. For example, I don't really want to have user defaults and the restart springboard options available, but show view frames is neat. I'll create a PR for it. :)

TabbarController support

Thanks for making this awesome tool!

I use it in a tab bar controller app. Unfortunately when the console is shown the tab bar gets another empty tab added for the console. Probably this window.rootViewController?.addChild(consoleViewController) is the problem.

Any idea on how to fix this?

Close console

Hey! Thanks for making this great tool.

Can we have a "Close Console" option (basically setting console.isVisible = false) similar to the "Clear Console" or the ability to add our own options?

App cashed when i want tap button ... and tap console view

libc++abi: terminating with uncaught exception of type NSException
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: sourceNode'
terminating with uncaught exception of type NSException

Moving console

Hi, how do I make the console view move? It might be a SwiftUI problem, but I can't drag the console view to any position and I can't find any public methods to call either.

SwiftUI version of LocalConsole

Hi, are you planing to make LocalConsole SwiftUI version as much as possible? If you can, it will be great. Awesome work btw, thanks.

UI API called on a Main thread? -(Crash)

Seems like there is an issue ๐Ÿ˜„:

`=================================================================
Main Thread Checker: UI API called on a background thread: -[UIScrollView contentOffset]
PID: 6701, TID: 2996419, Thread name: (none), Queue name: NSOperationQueue 0x7f8685ca3840 (QOS: UNSPECIFIED), QoS: 0
Backtrace:
4 ***** ***** 0x0000000104fdf804 $s12LocalConsole9LCManagerC5printyyypF + 164
5 ***** ***** 0x0000000104ae715b $s10CloudyLogs6LoggerC3log_4typeySS_ypSgtFZ + 235
6 ***** ***** 0x0000000104edeb3d $s6Shared6*****O13CommunicationEADC14attemptToQueue7channelSo16NSBlockOperationCSgAE7ChannelO_tFyycfU2_ + 477
7 ***** ***** 0x0000000104ede7c0 $sIeg_IeyB_TR + 48
8 Foundation 0x00007fff207fa0be NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK + 7
9 Foundation 0x00007fff207f9fb6 -[NSBlockOperation main] + 98
10 Foundation 0x00007fff207fcfd2 NSOPERATION_IS_INVOKING_MAIN + 17
11 Foundation 0x00007fff207f9200 -[NSOperation start] + 785
12 Foundation 0x00007fff207fd947 NSOPERATIONQUEUE_IS_STARTING_AN_OPERATION + 17
13 Foundation 0x00007fff207fd46a __NSOQSchedule_f + 182
14 libdispatch.dylib 0x000000010635e2c5 _dispatch_block_async_invoke2 + 83
15 libdispatch.dylib 0x000000010634f74e _dispatch_client_callout + 8
16 libdispatch.dylib 0x0000000106352066 _dispatch_continuation_pop + 557
17 libdispatch.dylib 0x000000010635147b _dispatch_async_redirect_invoke + 770
18 libdispatch.dylib 0x00000001063611b0 _dispatch_root_queue_drain + 351
19 libdispatch.dylib 0x0000000106361b0f _dispatch_worker_thread2 + 135
20 libsystem_pthread.dylib 0x00007fff60340417 pthread_wqthread + 244
21 libsystem_pthread.dylib 0x00007fff6033f42f start_wqthread + 15
2021-06-21 18:01:24.765790-0500 ***** [6701:2996419] [reports] Main Thread Checker: UI API called on a background thread: -[UIScrollView contentOffset]
PID: 6701, TID: 2996419, Thread name: (none), Queue name: NSOperationQueue 0x7f8685ca3840 (QOS: UNSPECIFIED), QoS: 0
Backtrace:
4 ***** ***** 0x0000000104fdf804 $s12LocalConsole9LCManagerC5printyyypF + 164
5 ***** ***** 0x0000000104ae715b $s10CloudyLogs6LoggerC3log_4typeySS_ypSgtFZ + 235
6 ***** ***** 0x0000000104edeb3d $s6Shared6
O13CommunicationEADC14attemptToQueue7channelSo16NSBlockOperationCSgAE7ChannelO_tFyycfU2
+ 477
7 ***** ***** 0x0000000104ede7c0 $sIeg_IeyB_TR + 48
8 Foundation 0x00007fff207fa0be NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK + 7
9 Foundation 0x00007fff207f9fb6 -[NSBlockOperation main] + 98
10 Foundation 0x00007fff207fcfd2 NSOPERATION_IS_INVOKING_MAIN + 17
11 Foundation 0x00007fff207f9200 -[NSOperation start] + 785
12 Foundation 0x00007fff207fd947 NSOPERATIONQUEUE_IS_STARTING_AN_OPERATION + 17
13 Foundation 0x00007fff207fd46a __NSOQSchedule_f + 182
14 libdispatch.dylib 0x000000010635e2c5 _dispatch_block_async_invoke2 + 83
15 libdispatch.dylib 0x000000010634f74e _dispatch_client_callout + 8
16 libdispatch.dylib 0x0000000106352066 _dispatch_continuation_pop + 557
17 libdispatch.dylib 0x000000010635147b _dispatch_async_redirect_invoke + 770
18 libdispatch.dylib 0x00000001063611b0 _dispatch_root_queue_drain + 351
19 libdispatch.dylib 0x0000000106361b0f _dispatch_worker_thread2 + 135
20 libsystem_pthread.dylib 0x00007fff60340417 _pthread_wqthread + 244
21 libsystem_pthread.dylib 0x00007fff6033f42f start_wqthread + 15

Main Thread Checker: UI API called on a background thread: -[UIScrollView contentSize]
PID: 6701, TID: 2996419, Thread name: (none), Queue name: NSOperationQueue 0x7f8685ca3840 (QOS: UNSPECIFIED), QoS: 0
Backtrace:
4 ***** ***** 0x0000000104fe9ca1 $s12LocalConsole16InvertedTextViewC11contentSizeSo6CGSizeVvg + 81
5 ***** ***** 0x0000000104fe9c18 $s12LocalConsole16InvertedTextViewC11contentSizeSo6CGSizeVvgTo + 40
6 ***** ***** 0x0000000104fdf860 $s12LocalConsole9LCManagerC5printyyypF + 256
7 ***** ***** 0x0000000104ae715b $s10CloudyLogs6LoggerC3log_4typeySS_ypSgtFZ + 235
8 ***** ***** 0x0000000104edeb3d $s6Shared6*****O13CommunicationEADC14attemptToQueue7channelSo16NSBlockOperationCSgAE7ChannelO_tFyycfU2_ + 477
9 ***** ***** 0x0000000104ede7c0 $sIeg_IeyB_TR + 48
10 Foundation 0x00007fff207fa0be NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK + 7
11 Foundation 0x00007fff207f9fb6 -[NSBlockOperation main] + 98
12 Foundation 0x00007fff207fcfd2 NSOPERATION_IS_INVOKING_MAIN + 17
13 Foundation 0x00007fff207f9200 -[NSOperation start] + 785
14 Foundation 0x00007fff207fd947 NSOPERATIONQUEUE_IS_STARTING_AN_OPERATION + 17
15 Foundation 0x00007fff207fd46a __NSOQSchedule_f + 182
16 libdispatch.dylib 0x000000010635e2c5 _dispatch_block_async_invoke2 + 83
17 libdispatch.dylib 0x000000010634f74e _dispatch_client_callout + 8
18 libdispatch.dylib 0x0000000106352066 _dispatch_continuation_pop + 557
19 libdispatch.dylib 0x000000010635147b _dispatch_async_redirect_invoke + 770
20 libdispatch.dylib 0x00000001063611b0 _dispatch_root_queue_drain + 351
21 libdispatch.dylib 0x0000000106361b0f _dispatch_worker_thread2 + 135
22 libsystem_pthread.dylib 0x00007fff60340417 pthread_wqthread + 244
23 libsystem_pthread.dylib 0x00007fff6033f42f start_wqthread + 15
2021-06-21 18:01:24.845531-0500 ***** [6701:2996419] [reports] Main Thread Checker: UI API called on a background thread: -[UIScrollView contentSize]
PID: 6701, TID: 2996419, Thread name: (none), Queue name: NSOperationQueue 0x7f8685ca3840 (QOS: UNSPECIFIED), QoS: 0
Backtrace:
4 ***** ***** 0x0000000104fe9ca1 $s12LocalConsole16InvertedTextViewC11contentSizeSo6CGSizeVvg + 81
5 ***** ***** 0x0000000104fe9c18 $s12LocalConsole16InvertedTextViewC11contentSizeSo6CGSizeVvgTo + 40
6 ***** ***** 0x0000000104fdf860 $s12LocalConsole9LCManagerC5printyyypF + 256
7 ***** ***** 0x0000000104ae715b $s10CloudyLogs6LoggerC3log_4typeySS_ypSgtFZ + 235
8 ***** ***** 0x0000000104edeb3d $s6Shared6
O13CommunicationEADC14attemptToQueue7channelSo16NSBlockOperationCSgAE7ChannelO_tFyycfU2
+ 477
9 ***** ***** 0x0000000104ede7c0 $sIeg_IeyB_TR + 48
10 Foundation 0x00007fff207fa0be NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK + 7
11 Foundation 0x00007fff207f9fb6 -[NSBlockOperation main] + 98
12 Foundation 0x00007fff207fcfd2 NSOPERATION_IS_INVOKING_MAIN + 17
13 Foundation 0x00007fff207f9200 -[NSOperation start] + 785
14 Foundation 0x00007fff207fd947 NSOPERATIONQUEUE_IS_STARTING_AN_OPERATION + 17
15 Foundation 0x00007fff207fd46a __NSOQSchedule_f + 182
16 libdispatch.dylib 0x000000010635e2c5 _dispatch_block_async_invoke2 + 83
17 libdispatch.dylib 0x000000010634f74e _dispatch_client_callout + 8
18 libdispatch.dylib 0x0000000106352066 _dispatch_continuation_pop + 557
19 libdispatch.dylib 0x000000010635147b _dispatch_async_redirect_invoke + 770
20 libdispatch.dylib 0x00000001063611b0 _dispatch_root_queue_drain + 351
21 libdispatch.dylib 0x0000000106361b0f _dispatch_worker_thread2 + 135
22 libsystem_pthread.dylib 0x00007fff60340417 _pthread_wqthread + 244
23 libsystem_pthread.dylib 0x00007fff6033f42f start_wqthread + 15
2021-06-21 23:01:24 +0000: Communication: service: ๐Ÿ“ถ ***** BLE: "1-604417" unitIdentifier: 13 not connected, will try to connect

Main Thread Checker: UI API called on a background thread: -[UIView bounds]
PID: 6701, TID: 2996419, Thread name: (none), Queue name: NSOperationQueue 0x7f8685ca3840 (QOS: UNSPECIFIED), QoS: 0
Backtrace:
4 ***** ***** 0x0000000104fdf8e6 $s12LocalConsole9LCManagerC5printyyypF + 390
5 ***** ***** 0x0000000104ae715b $s10CloudyLogs6LoggerC3log_4typeySS_ypSgtFZ + 235
6 ***** ***** 0x0000000104edeb3d $s6Shared6*****O13CommunicationEADC14attemptToQueue7channelSo16NSBlockOperationCSgAE7ChannelO_tFyycfU2_ + 477
7 ***** ***** 0x0000000104ede7c0 $sIeg_IeyB_TR + 48
8 Foundation 0x00007fff207fa0be NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK + 7
9 Foundation 0x00007fff207f9fb6 -[NSBlockOperation main] + 98
10 Foundation 0x00007fff207fcfd2 NSOPERATION_IS_INVOKING_MAIN + 17
11 Foundation 0x00007fff207f9200 -[NSOperation start] + 785
12 Foundation 0x00007fff207fd947 NSOPERATIONQUEUE_IS_STARTING_AN_OPERATION + 17
13 Foundation 0x00007fff207fd46a __NSOQSchedule_f + 182
14 libdispatch.dylib 0x000000010635e2c5 _dispatch_block_async_invoke2 + 83
15 libdispatch.dylib 0x000000010634f74e _dispatch_client_callout + 8
16 libdispatch.dylib 0x0000000106352066 _dispatch_continuation_pop + 557
17 libdispatch.dylib 0x000000010635147b _dispatch_async_redirect_invoke + 770
18 libdispatch.dylib 0x00000001063611b0 _dispatch_root_queue_drain + 351
19 libdispatch.dylib 0x0000000106361b0f _dispatch_worker_thread2 + 135
20 libsystem_pthread.dylib 0x00007fff60340417 pthread_wqthread + 244
21 libsystem_pthread.dylib 0x00007fff6033f42f start_wqthread + 15
2021-06-21 18:01:24.888052-0500 ***** [6701:2996419] [reports] Main Thread Checker: UI API called on a background thread: -[UIView bounds]
PID: 6701, TID: 2996419, Thread name: (none), Queue name: NSOperationQueue 0x7f8685ca3840 (QOS: UNSPECIFIED), QoS: 0
Backtrace:
4 ***** ***** 0x0000000104fdf8e6 $s12LocalConsole9LCManagerC5printyyypF + 390
5 ***** ***** 0x0000000104ae715b $s10CloudyLogs6LoggerC3log_4typeySS_ypSgtFZ + 235
6 ***** ***** 0x0000000104edeb3d $s6Shared6
O13CommunicationEADC14attemptToQueue7channelSo16NSBlockOperationCSgAE7ChannelO_tFyycfU2
+ 477
7 ***** ***** 0x0000000104ede7c0 $sIeg_IeyB_TR + 48
8 Foundation 0x00007fff207fa0be NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK + 7
9 Foundation 0x00007fff207f9fb6 -[NSBlockOperation main] + 98
10 Foundation 0x00007fff207fcfd2 NSOPERATION_IS_INVOKING_MAIN + 17
11 Foundation 0x00007fff207f9200 -[NSOperation start] + 785
12 Foundation 0x00007fff207fd947 NSOPERATIONQUEUE_IS_STARTING_AN_OPERATION + 17
13 Foundation 0x00007fff207fd46a __NSOQSchedule_f + 182
14 libdispatch.dylib 0x000000010635e2c5 _dispatch_block_async_invoke2 + 83
15 libdispatch.dylib 0x000000010634f74e _dispatch_client_callout + 8
16 libdispatch.dylib 0x0000000106352066 _dispatch_continuation_pop + 557
17 libdispatch.dylib 0x000000010635147b _dispatch_async_redirect_invoke + 770
18 libdispatch.dylib 0x00000001063611b0 _dispatch_root_queue_drain + 351
19 libdispatch.dylib 0x0000000106361b0f _dispatch_worker_thread2 + 135
20 libsystem_pthread.dylib 0x00007fff60340417 _pthread_wqthread + 244
21 libsystem_pthread.dylib 0x00007fff6033f42f start_wqthread + 15

Main Thread Checker: UI API called on a background thread: -[UITextView text]
PID: 6701, TID: 2996419, Thread name: (none), Queue name: NSOperationQueue 0x7f8685ca3840 (QOS: UNSPECIFIED), QoS: 0
Backtrace:
4 ***** ***** 0x0000000104fdfbba $s12LocalConsole9LCManagerC5printyyypFSSyXEfU_ + 202
5 ***** ***** 0x0000000104fdf9f9 $s12LocalConsole9LCManagerC5printyyypF + 665
6 ***** ***** 0x0000000104ae715b $s10CloudyLogs6LoggerC3log_4typeySS_ypSgtFZ + 235
7 ***** ***** 0x0000000104edeb3d $s6Shared6O13CommunicationEADC14attemptToQueue7channelSo16NSBlockOperationCSgAE7ChannelO_tFyycfU2_ + 477
8 ***** ***** 0x0000000104ede7c0 $sIeg_IeyB_TR + 48
9 Foundation 0x00007fff207fa0be NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK + 7
10 Foundation 0x00007fff207f9fb6 -[NSBlockOperation main] + 98
11 Foundation 0x00007fff207fcfd2 NSOPERATION_IS_INVOKING_MAIN + 17
12 Foundation 0x00007fff207f9200 -[NSOperation start] + 785
13 Foundation 0x00007fff207fd947 NSOPERATIONQUEUE_IS_STARTING_AN_OPERATION + 17
14 Foundation 0x00007fff207fd46a __NSOQSchedule_f + 182
15 libdispatch.dylib 0x000000010635e2c5 _dispatch_block_async_invoke2 + 83
16 libdispatch.dylib 0x000000010634f74e _dispatch_client_callout + 8
17 libdispatch.dylib 0x0000000106352066 _dispatch_continuation_pop + 557
18 libdispatch.dylib 0x000000010635147b _dispatch_async_redirect_invoke + 770
19 libdispatch.dylib 0x00000001063611b0 _dispatch_root_queue_drain + 351
20 libdispatch.dylib 0x0000000106361b0f _dispatch_worker_thread2 + 135
21 libsystem_pthread.dylib 0x00007fff60340417 pthread_wqthread + 244
22 libsystem_pthread.dylib 0x00007fff6033f42f start_wqthread + 15
2021-06-21 18:01:24.916817-0500 ***** *****[6701:2996419] [reports] Main Thread Checker: UI API called on a background thread: -[UITextView text]
PID: 6701, TID: 2996419, Thread name: (none), Queue name: NSOperationQueue 0x7f8685ca3840 (QOS: UNSPECIFIED), QoS: 0
Backtrace:
4 ***** ***** 0x0000000104fdfbba $s12LocalConsole9LCManagerC5printyyypFSSyXEfU
+ 202
5 ***** ***** 0x0000000104fdf9f9 $s12LocalConsole9LCManagerC5printyyypF + 665
6 ***** ***** 0x0000000104ae715b $s10CloudyLogs6LoggerC3log_4typeySS_ypSgtFZ + 235
7 ***** ***** 0x0000000104edeb3d $s6Shared6
O13CommunicationEADC14attemptToQueue7channelSo16NSBlockOperationCSgAE7ChannelO_tFyycfU2_ + 477
8 ***** ***** 0x0000000104ede7c0 $sIeg_IeyB_TR + 48
9 Foundation 0x00007fff207fa0be NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK + 7
10 Foundation 0x00007fff207f9fb6 -[NSBlockOperation main] + 98
11 Foundation 0x00007fff207fcfd2 NSOPERATION_IS_INVOKING_MAIN + 17
12 Foundation 0x00007fff207f9200 -[NSOperation start] + 785
13 Foundation 0x00007fff207fd947 NSOPERATIONQUEUE_IS_STARTING_AN_OPERATION + 17
14 Foundation 0x00007fff207fd46a __NSOQSchedule_f + 182
15 libdispatch.dylib 0x000000010635e2c5 _dispatch_block_async_invoke2 + 83
16 libdispatch.dylib 0x000000010634f74e _dispatch_client_callout + 8
17 libdispatch.dylib 0x0000000106352066 _dispatch_continuation_pop + 557
18 libdispatch.dylib 0x000000010635147b _dispatch_async_redirect_invoke + 770
19 libdispatch.dylib 0x00000001063611b0 _dispatch_root_queue_drain + 351
20 libdispatch.dylib 0x0000000106361b0f _dispatch_worker_thread2 + 135
21 libsystem_pthread.dylib 0x00007fff60340417 _pthread_wqthread + 244
22 libsystem_pthread.dylib 0x00007fff6033f42f start_wqthread + 15`

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.