profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/Johann-S/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.

Johann-S/bs-stepper 320

A stepper for Bootstrap 4.x

Johann-S/bs-custom-file-input 170

A little plugin for Bootstrap 4 custom file input

Johann-S/bs-breakpoints 21

A plugin which detect Bootstrap 4 breakpoints and emit when there is a change

Johann-S/bs-customizer 16

Create a custom Bootstrap 4.x build

Johann-S/gulp-image-lqip 7

Gulp plugin which generates HTML image placeholders using lqip technique

Johann-S/JSUnitSaucelabs 4

Allow you to run your unit test throw Saucelabs without Grunt

Johann-S/battery-monitor 3

An app to monitor your laptop battery

Johann-S/TouchFaker 2

An Object to fake touch events

Johann-S/FileZilla-Password-Manager 1

A password manager for FileZilla

Johann-S/follow-btc 1

A small cli to follow btc evolution on different providers

created tagIOfate/kucoin-ws

tagv1.1.0

Node.js websocket client for KuCoin

created time in 2 days

push eventIOfate/kucoin-ws

Johann-S

commit sha 3a803ed4366dc8f98b9298f0644a030b725519cd

chore(release): 1.1.0

view details

push time in 2 days

push eventIOfate/kucoin-ws

Johann-S

commit sha c2e4e754e49f9d2752e1e3daf68d9b883e0694af

feat(core): emit a reconnect event

view details

push time in 2 days

push eventIOfate/kucoin-ws

Johann-S

commit sha 511150e94b48cb4ce5bad77a355af399260b803d

chore(deps): update

view details

push time in 2 days

push eventIOfate/kucoin-ws

Johann-S

commit sha f71afa02b976c900b6084ce3268b1d9de6b3145e

feat(core): add method to check if the socket is open

view details

Johann-S

commit sha d3f7a193f9c9dd3a7529c2cd48a803d7bde9a872

fix(core): restore previous subs on disconnect

view details

push time in 2 days

delete branch Johann-S/awesome-crypto-trading-bots

delete branch : patch-1

delete time in 6 days

push eventIOfate/kucoin-ws

Johann-S

commit sha 0b347f4d56f11af2eae5774439e811b1f39edda0

chore(release): 1.0.2

view details

push time in 10 days

created tagIOfate/kucoin-ws

tagv1.0.2

Node.js websocket client for KuCoin

created time in 10 days

push eventIOfate/kucoin-ws

Johann-S

commit sha a37d08995e140bcbea14d0bb993f2fb0edbb2c10

fix(candle): use candle add to detect the end of a candle

view details

Johann-S

commit sha 72136f2fe7b4fa365fcfaf80db7798649d4970d6

chore(package): add repository and bug tracker url

view details

Johann-S

commit sha fcc7ce04ccf0d7aa1d35456b9f7f1cf755b82c2b

chore(deps): update

view details

push time in 10 days

PR opened twbs/bootstrap

Reviewers
being ssr friendly when accessing dom objects js v5

Rebased version of: #33131

+139 -67

0 comment

22 changed files

pr created time in 10 days

create barnchtwbs/bootstrap

branch : jo-ssr-friendly

created branch time in 10 days

PR opened botcrypto-io/awesome-crypto-trading-bots

add kucoin-ws lib link

something we use at IOfate and published for free

+2 -1

0 comment

1 changed file

pr created time in 12 days

push eventJohann-S/awesome-crypto-trading-bots

Johann-S

commit sha 524352e6490178c583e1cea8d1a6a5ef79fe9bb5

add kucoin-ws lib link

view details

push time in 12 days

push eventIOfate/kucoin-ws

Johann-S

commit sha b9089e2f69b50a06ca386cd768dbd8d94343221c

fix(candle): do not emit twice the same candle

view details

Johann-S

commit sha 76488e73b26658b04772aed262efdb3a9366e315

chore(dev): add standard version for changelog

view details

Johann-S

commit sha 051572ccf89ec6575a116151fc6706d0b9c38480

chore(release): 1.0.1

view details

push time in 20 days

created tagIOfate/kucoin-ws

tagv1.0.1

Node.js websocket client for KuCoin

created time in 20 days

push eventIOfate/kucoin-ws

Johann-S

commit sha e1243f3b9821d384e1b854af2fbd7d938c4a4f3d

update readme to add some badges

view details

push time in 20 days

pull request commentccxt/ccxt

add support to crypto.com exchange

It seems our community chose Crypto.com : https://twitter.com/getwhalinvest/status/1428331561456390149 we need you guys 🙏 😄

Johann-S

comment created time in a month

startedlirantal/awesome-nodejs-security

started time in a month

pull request commentccxt/ccxt

add support to crypto.com exchange

Thanks @mrbaguvix I made the changes 👌

Any news about the verification @frosty00 or @kroitor ?

Johann-S

comment created time in 2 months

push eventIOfate/ccxt

Johann-S

commit sha ddc60c8cc185548d957af289bc6621bc5d7dd992

add support to crypto.com exchange

view details

push time in 2 months

push eventIOfate/ccxt

Carlo Revelli

commit sha 022c7524c9d7b57385e87fe4333c046095230d51

fix btctradeua parseTrade

view details

Igor Kroitor

commit sha ec5e1f3bb5792e710a85c2e52ea79eda34f80105

btctradeua hmsLength fixup

view details

Igor Kroitor

commit sha bf59fec6c2f7a9c02ab66283b3ab5c052f6e1966

Merge branch 'master' into btctradeua-fix

view details

Carlo Revelli

commit sha 2fe96c82604df54f4e722a63a0067d3ccc9b570b

add fetchSavings

view details

Carlo Revelli

commit sha b3c8a7951196bb0e1b6e71be336e3e182bd1235b

edit savings merge to fetchBalance

view details

ndubel

commit sha 29180420d2e0b568d04dff599fa5984ec3bafe31

okex fetchOHLCV since fix

view details

Igor Kroitor

commit sha 198389b97d9b5e1dae6094231f3a3f663b14394f

okex http code 429 handling fix #9612

view details

Travis CI

commit sha 665f159fafa9b3dcee94df5ee0c757ae6af1425e

1.53.36 [ci skip]

view details

Igor Kroitor

commit sha 741875e396e4dea0813458455df8a7217475f6b1

Merge pull request #9611 from ndubel/patch-133 okex fetchOHLCV since fix

view details

Travis CI

commit sha b00900e31943ad219c1cacb95db5bfa1138c2f89

1.53.37 [ci skip]

view details

ndubel

commit sha 43a2ed75fb005c9c5bb723400eee40e9131fe31d

poloniex parseTransactionStatus

view details

Igor Kroitor

commit sha 38df9caf4ac502c2e665e61ef5c51a80050a5369

Merge pull request #9614 from ndubel/patch-134 poloniex parseTransactionStatus

view details

Travis CI

commit sha 89e8580ae95be9d2ff7a2eb7a0bd0f145ec5b7c0

1.53.38 [ci skip]

view details

Igor Kroitor

commit sha 90daf5a5d1876ac2023555f2d1f2ca558ce779a4

okex v5 parseBalanceByType

view details

Igor Kroitor

commit sha f2598fbc8f5814a682505614db6ec29a4c404574

okex v5 cleanup

view details

Travis CI

commit sha f67ba5992ce7e73611c628d588257071059a9b1a

1.53.39 [ci skip]

view details

Igor Kroitor

commit sha a2ef561ed13d9b6880c959150726ca0cfe36afd1

Merge branch 'master' of github.com:ccxt/ccxt

view details

Travis CI

commit sha d878c8971b7a45be66100249f64b58785965f921

1.53.40 [ci skip]

view details

Igor Kroitor

commit sha 8376c09071f6d4f407f0647abe3c0a281df8b5b3

okex v5 ccxt pro ws

view details

Igor Kroitor

commit sha 141d45305060862567df9f3aa20ee761d6dbbccd

Merge branch 'master' of github.com:ccxt/ccxt

view details

push time in 2 months

push eventIOfate/ccxt

Carlo Revelli

commit sha 5e2098d39f36adf15938bce55417cea0bcaa3ca0

BN -> BigInt precise

view details

Carlo Revelli

commit sha 7ac5f9a60307b02fb1bb1dcafd2a9ed1efd932c0

refactor ternary

view details

Igor Kroitor

commit sha 59cd3ae27cfcb0043d3cd39e0f17270a48bd7a35

zb comments

view details

Travis CI

commit sha b443e0d94ed81df04d76ab7ad3ba93a25859ba64

1.51.95 [ci skip]

view details

Igor Kroitor

commit sha 088d78176f6aacf9bc342851f03384143bac48ba

Merge pull request #9439 from frosty00/optimize-precise precise BN -> BigInt

view details

Travis CI

commit sha 4a55d3bfc4f201a6e0367c5e45ca618ef004fb37

1.51.96 [ci skip]

view details

Igor Kroitor

commit sha 81a651d0ace0154a5913039070bb7a013295c324

zb in ccxt.pro

view details

Travis CI

commit sha 5270f7b77e2739d8a10a80c4d7fa6d7c4c03f7ec

1.51.97 [ci skip]

view details

Igor Kroitor

commit sha a621c2b8341082adbbfba3ec26ddd44cc358aa52

ndax fetchOrderTrades numeric order id fix

view details

Travis CI

commit sha 93a287570541fe275ded7f452d33c99226d7ca45

1.51.98 [ci skip]

view details

ndubel

commit sha e6b1f58763764e9f92d5f8a3e8f3a710198107e8

ascendex fetchMarkets fees

view details

Igor Kroitor

commit sha 9b6b4e164fae617a2c28f159155036bfac6a9798

Merge pull request #9450 from ndubel/patch-104 ascendex fetchMarkets fees

view details

Travis CI

commit sha 73048239e3bd161096ebd4b6eba3d9b17c930728

1.51.99 [ci skip]

view details

Igor Kroitor

commit sha fa2a4e9c7a5f88c71593e675ab842593f4745f4a

wavesexchange edit

view details

Igor Kroitor

commit sha 4ac88f93302de74c18fc4198677f74c5dbfb359f

Merge branch 'master' of github.com:ccxt/ccxt

view details

Igor Kroitor

commit sha 8b041d88e6e15dfaacd9b927a305aab62f2d1b23

1.52.0

view details

ndubel

commit sha 8405e6b5b3b84f51dfbe0350a8e9e5d56cefbe6c

ascendex fetchMarkets margin

view details

Travis CI

commit sha 1144d35e3d51fd6d61aa8c96cb220b370c95cebd

1.52.1 [ci skip]

view details

Igor Kroitor

commit sha 0ceb432ce0ffb5927144818b0aa992818847f94e

Merge pull request #9451 from ndubel/patch-105 ascendex fetchMarkets margin

view details

Travis CI

commit sha 39a5cd3d320fb8ea2935fa0061b668c1a0a0cc13

1.52.2 [ci skip]

view details

push time in 2 months

startedSuperalgos/Superalgos

started time in 2 months

pull request commentccxt/ccxt

add support to crypto.com exchange

If you need a referral do not hesitate @frosty00 😛

Johann-S

comment created time in 2 months

pull request commentccxt/ccxt

add support to crypto.com exchange

friendly ping @frosty00 and @kroitor I made the requested changes

Johann-S

comment created time in 2 months

push eventIOfate/ccxt

Johann-S

commit sha 82213affd0bb8ec434d5563b84e73c7fa1f37628

add support to crypto.com exchange

view details

push time in 2 months

push eventIOfate/ccxt

Johann-S

commit sha 9cfa1f31bf54d092b9797ad16c9d3fcf8b7a0d75

add support to crypto.com exchange

view details

push time in 2 months

push eventIOfate/ccxt

Johann-S

commit sha d6383d819226f9a4bf86816c102ce263141198d4

add support to crypto.com exchange

view details

push time in 2 months

Pull request review commentccxt/ccxt

add support to crypto.com exchange

+'use strict';++//  ---------------------------------------------------------------------------++const Exchange = require ('./base/Exchange');+const { ArgumentsRequired, ExchangeError, InsufficientFunds, DDoSProtection, InvalidNonce, PermissionDenied, BadRequest, BadSymbol } = require ('./base/errors');++module.exports = class cryptocom extends Exchange {+    describe () {+        return this.deepExtend (super.describe (), {+            'id': 'cryptocom',+            'name': 'Crypto.com',+            'countries': [ 'MT' ],+            'version': 'v2',+            'rateLimit': 100,+            'has': {+                'cancelAllOrders': true,+                'cancelOrder': true,+                'CORS': false,+                'createOrder': true,+                'fetchCurrencies': false,+                'fetchBalance': true,+                'fetchBidsAsks': false,+                'fetchClosedOrders': 'emulated',+                'fetchDepositAddress': true,+                'fetchDeposits': true,+                'fetchFundingFees': false,+                'fetchFundingHistory': false,+                'fetchFundingRate': false,+                'fetchFundingRates': false,+                'fetchIsolatedPositions': false,+                'fetchMarkets': true,+                'fetchMyTrades': true,+                'fetchOHLCV': true,+                'fetchOpenOrders': true,+                'fetchOrder': true,+                'fetchOrders': true,+                'fetchOrderBook': true,+                'fetchPositions': false,+                'fetchStatus': false,+                'fetchTicker': true,+                'fetchTickers': true,+                'fetchTime': false,+                'fetchTrades': true,+                'fetchTradingFee': false,+                'fetchTradingFees': false,+                'fetchTransactions': false,+                'fetchWithdrawals': false,+                'setLeverage': false,+                'setMarginMode': false,+                'withdraw': false,+                'transfer': false,+                'fetchTransfers': false,+            },+            'timeframes': {+                '1m': '1m',+                '5m': '5m',+                '15m': '15m',+                '30m': '30m',+                '1h': '1h',+                '4h': '4h',+                '6h': '6h',+                '12h': '12h',+                '1d': '1d',+                '1w': '7d',+                '2w': '14d',+                '1M': '1M',+            },+            'urls': {+                'logo': 'https://cryptocom.intercom-attachments-7.com/i/o/204082378/08c69fc201ae0fa30ca1ef83/47b-bC4xUjyLOT2Oo1NBITGS2W9hRSgSQ3avOH__QTDrYVJDpXYJ87wAIvHAc6-aWJ61M5dq8j1ebA2xfIkgkLX3dkoZ8DP3qbS84ZFFkUHDq22iV4dxAT1dxhQhWEFbwgOcI2f6',+                'test': 'https://uat-api.3ona.co/v2',+                'api': 'https://api.crypto.com/v2',+                'www': 'https://crypto.com/',+                'referral': '',+                'doc': 'https://exchange-docs.crypto.com/',+                'fees': 'https://crypto.com/exchange/document/fees-limits',+            },+            'api': {+                'public': {+                    'get': [+                        'public/get-instruments',+                        'public/get-book',+                        'public/get-candlestick',+                        'public/get-ticker',+                        'public/get-trades',+                    ],+                },+                'private': {+                    'post': [+                        'private/create-withdrawal',+                        'private/get-withdrawal-history',+                        'private/get-deposit-history',+                        'private/get-deposit-address',+                        'private/get-account-summary',+                        'private/create-order',+                        'private/cancel-order',+                        'private/cancel-all-orders',+                        'private/get-order-history',+                        'private/get-open-orders',+                        'private/get-order-detail',+                        'private/get-trades',+                    ],+                },+            },+            'fees': {+                'trading': {+                    'maker': 0.004,+                    'taker': 0.004,+                },+            },+            'options': {},+            // https://exchange-docs.crypto.com/spot/index.html#response-and-reason-codes+            'exceptions': {+                'exact': {+                    '10001': ExchangeError,+                    '10002': PermissionDenied,+                    '10003': PermissionDenied,+                    '10004': BadRequest,+                    '10005': PermissionDenied,+                    '10006': DDoSProtection,+                    '10007': InvalidNonce,+                    '10008': BadRequest,+                    '10009': BadRequest,+                    '20001': BadRequest,+                    '20002': InsufficientFunds,+                    '30003': BadSymbol,+                    '30004': BadRequest,+                    '30005': BadRequest,+                    '30006': BadRequest,+                    '30007': BadRequest,+                    '30008': BadRequest,+                    '30009': BadRequest,+                    '30010': BadRequest,+                    '30013': BadRequest,+                    '30014': BadRequest,+                    '30016': BadRequest,+                    '30017': BadRequest,+                    '30023': BadRequest,+                    '30024': BadRequest,+                    '30025': BadRequest,+                    '40001': BadRequest,+                    '40002': BadRequest,+                    '40003': BadRequest,+                    '40004': BadRequest,+                    '40005': BadRequest,+                    '40006': BadRequest,+                    '40007': BadRequest,+                    '50001': BadRequest,+                },+            },+        });+    }++    nonce () {+        return this.milliseconds ();+    }++    sign (path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {+        let url = this.urls['api'] + '/' + path;+        const query = this.omit (params, this.extractParams (path));+        if (api === 'public') {+            if (Object.keys (query).length) {+                url += '?' + this.urlencode (query);+            }+        } else {+            this.checkRequiredCredentials ();+            const id = 1;+            const nonce = this.nonce ().toString ();+            const requestParams = this.extend ({}, params);+            const paramsKeys = Object.keys (requestParams).sort ();

it works well! Thank you 👍

Johann-S

comment created time in 2 months