Giter Club home page Giter Club logo

agama's Introduction

This is experimental and unfinished software. Use at your own risk! No warranty for any kind of damage!

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Agama Wallet

Komodos Desktop Multicoin Wallet

Build & Installation

Prerequirements:

  1. Install nodeJS/npm

  2. Install git

 apt-get install git

Build & Start EasyDEX-GUI (frontend)

git clone --recursive https://github.com/komodoplatform/agama --branch master --single-branch
cd agama/gui/EasyDEX-GUI/react/
git checkout master && git pull origin master
npm update && npm install
npm run build && npm start

Note: if you have errors during build on master branch try to checkout and build from dev (both agama and easydex-gui repos). Usually dev has all latest fixes including build scripts. Master is merged when new release comes out.

Leave the above process running and use a new terminal windows/tab when proceeding with the below steps.

Now please create a directory called bin inside assets/ and afterwards copy komodod and komodo-cli to a new subfolder named after the operating system you are building Agama for: linux64, osx or win64. From within agama/ the structure will be assets/bin/linux64 (for example on linux).

Start Agama App (electron)

cd agama
npm update && npm install
npm start

In order to use debug/dev mode please stop Agama App (electron) and either set dev: true and debug: true in ~/.agama/config.json and then restart the app or replace step 4) from above with the start command below:

npm start devmode

You re ready to dev!

Bundling & packaging:

In order to build the release bundles please install the electron-packager and electron-prebuilt packages:

npm install electron-packager --save-dev
npm install electron-prebuilt --save-dev

We refer to the original electron-packager repository for more detailed information and further documentation.

Linux

cd agama
./node_modules/.bin/electron-packager . --platform=linux --arch=x64 --icon=assets/icons/agama_icons/128x128.png --out=build/ --buildVersion=VERSION_NUMBER_HERE --ignore=assets/bin/win64 --ignore=assets/bin/osx --overwrite

change architecture build parameter to --arch=x32 for 32 bit build

OSX

cd agama
./node_modules/.bin/electron-packager . --platform=darwin --arch=x64 --icon=assets/icons/agama_icons/agama_app_icon.icns --out=build/ --buildVersion=VERSION_NUMBER_HERE --ignore=assets/bin/win64 --ignore=assets/bin/linux64 --overwrite

Windows

dir agama
./node_modules/.bin/electron-packager.exe . --platform=win32 --arch=x64 --icon=assets/icons/agama_icons/agama_app_icon.ico --out=build/ --buildVersion=VERSION_NUMBER_HERE --ignore=assets/bin/osx --ignore=assets/bin/linux64 --overwrite

# 32bit
electron-packager . --platform=win32 --arch=ia32 --icon=assets/icons/agama_icons/agama_app_icon.ico --out=build/ --buildVersion=VERSION_NUMBER_HERE --ignore=assets/bin/osx --ignore=assets/bin/linux64 --overwrite

# x64 and x86
electron-packager . --platform=win32 --arch=all --icon=assets/icons/agama_icons/agama_app_icon.ico --out=build/ --buildVersion=VERSION_NUMBER_HERE --ignore=assets/bin/osx --ignore=assets/bin/linux64 --overwrite

Additional bundling tools for deb and rpm packages

electron-installer-debian electron-installer-redhat

agama's People

Contributors

alrighttt avatar aseandude avatar ca333 avatar devopsacid avatar hypocalese avatar justbeingjustin avatar lucioric2000 avatar lukechilds avatar lumberscout avatar magnacoinx avatar metaphilibert avatar metaspartan avatar particle4dev avatar pbca26 avatar pedjaman avatar pioryan avatar satindergrewal avatar sawlysawly avatar selimcan123 avatar siulynot avatar st3rling0x avatar webworker01 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

agama's Issues

Use existing running native daemon session

New feature request:

When an user is running Komodo or other AC using CLI and wanted to use the Agama GUI, user currently gets a message that the coin daemon is already running and the coin doesn't start in native mode on Agama.

It would be a nice feature if Agama can use the existing session anytime when user wants while the daemon is running in native mode in CLI.

Current Agama behaviour that stops the daemon when closing Agama can stay as it is. This is a helpful feature for end-users.

Please Add "Claim Reward" On AGAMA Wallet For Ledger Wallet Users

There are many of users who invest a lots of money into Komodo and stored them with Ledger Wallet because it safer than storing it into our computer and plus Ledger is easy to use.

So we want Komodo admins to please adding a "Claim Reward" on AGAMA Wallet for the Ledger Wallet users.....Please add, because we been waiting for this function to be added into AGAMA since we invested into Komodo ICO.

WIF to key pair error

Getting an error when trying to get pub address from WIF

Steps:

  1. Login to coin SPV
  2. Go to Tools ->WIF to key pair
  3. Enter WIF
  4. Select Get WIF

Screenshots:
image

Sort adding coins

Feature request from user:

Sorting options when adding coins (in main panel and inside Agama). By default it should be sorted by cons usage stats (if possible). Otherwise per release basis update on usage? Biggest coins on the top (like BTC). Additional sorting options - #2 alphabetically #3 newest #oldest in Agama

Agama Linux wallet does not shut down with Komodo in native mode

When running the Agama wallet for Linux (0.2.0.27c-beta) in native mode with only the Komodo as the only coin in the wallet; the wallet does not shut down when you press the x in the corner. The wallet main window closes and the "shut down window" pops up but never goes away even after several hours. Only killing the process works

0.2.38-beta on macOS High Sierra Native KMD crashes

agama v0 2 38-beta 2018-05-14 22-47-01

Same exact thing happened to me on 0.2.37-beta as well.

call komodo_args.(/Applications/Agama.app/Contents/Resources/app/assets/bin/osx/komodod) NOTARY_PUBKEY.()
...................................processing /Users/jonathanleto/Library/Application Support/Komodo/komodostate 66353KB, validated.-1
inds.0x10c994000 validate /Users/jonathanleto/Library/Application Support/Komodo/komodostate.ind fsize.4901144 datalen.67945559 n.1225286 lastfpos.0
took 14 seconds to process /Users/jonathanleto/Library/Application Support/Komodo/komodostate 66353KB
...................................................................finished loading blocks
komodod exited with code null, crashed?

This error also happened to me on an older version of macOS before updating, this bug does not seem specific to High Sierra.

Load last saved coin(s)

Feature request from user:

Remember coins loaded when hitting “soft or complete logout” AND offer option to load last saved coins (new conditional button above activation - conditional = only displayed if there was anything last time saved). NOTE - differentiate between SPV and Native or just allow SPV quick load only (t o avoid slow down from native deamons, or also do natives but sequential and inform user it will be sequential for natives?)

Sort loaded wallet

Feature request from user:

Sorting after loading wallet - also loaded coins could be displayed in different order, for example by #1 total amount, #2 name #3 amount calculated to BTC value.

Add Name column for Receiving address

Feature idea from a user:

I'm not sure if this is the place for requests(or ideas), but I have a simple idea agama could introduce to the next version of their wallet.
My idea is to add a "NAME" column in the Receiving Addresses part of the wallet. If this name was attached to each address, and could be edited at will. This would be a simple addition that would help keep track of different addresses in the one wallet. For example, if you have 3 addresses, 1 you use for hodling, 1 for receiving funds, 1 for mining into, you could change the "NAME" of each address to exactly those uses. "HODL" "Receive" "Mining". Instead of "Rx...." "Rh...." "Rj.....". Thoughts?

Not seeing some receiving addresses after reinstalling agama.

Hi,
If anyone can help me.

For some reason, I am not seeing some addresses after reinstalling
agama on my laptop. I have imported the key that was generated
when I first installed it and all.

Now I am seeing only one and I had kmd on the other and not
able to see it.

Thanks for your help.

0.2.41d macos RPC issue

I just upgraded Agama on my macOS High Sierra 10.13.6 (17G65).

screen shot 2018-08-29 at 8 58 23 pm

Debug.log (last 50 lines)

2018-08-30 00:51:06 init message: Loading block index...
2018-08-30 00:51:06 Opening LevelDB in /Users/<myuseraccount>/Library/Application Support/Komodo/blocks/index
2018-08-30 00:51:06 Opened LevelDB successfully
2018-08-30 00:51:06 Opening LevelDB in /Users/<myuseraccount>/Library/Application Support/Komodo/chainstate
2018-08-30 00:51:06 Opened LevelDB successfully
2018-08-30 00:51:06 Opening LevelDB in /Users/<myuseraccount>/Library/Application Support/Komodo/notarisations
2018-08-30 00:51:06 Opened LevelDB successfully
2018-08-30 00:51:06 LoadBlockIndexDB: start loading guts
2018-08-30 00:51:40 LoadBlockIndexDB: loaded guts
2018-08-30 00:51:42 LoadBlockIndexDB: last block file = 26
2018-08-30 00:51:42 LoadBlockIndexDB: last block file info: CBlockFileInfo(blocks=16314, size=128644463, heights=966473...982685, time=2018-08-15...2018-08-26)
2018-08-30 00:51:42 Checking all blk files are present...
2018-08-30 00:51:48 LoadBlockIndexDB: transaction index enabled
2018-08-30 00:51:48 LoadBlockIndexDB: address index disabled
2018-08-30 00:51:48 LoadBlockIndexDB: timestamp index disabled
2018-08-30 00:51:48 LoadBlockIndexDB: spent index disabled
2018-08-30 00:51:49 LoadBlockIndexDB: hashBestChain=0814e1b108844b9939a9d0087cf3e79ee5f3f47c0c4457b84e5771f3e0ad6727 height=982685 date=2018-08-26 22:01:38 progress=0.995026
2018-08-30 00:51:49 init message: Rewinding blocks if needed...
2018-08-30 00:51:53 init message: Verifying blocks...
2018-08-30 00:51:53 Verifying last 288 blocks at level 3
2018-08-30 00:52:10 No coin database inconsistencies in last 289 blocks (1606 transactions)
2018-08-30 00:52:10  block index           64282ms
2018-08-30 00:52:10 init message: Loading wallet...
2018-08-30 00:52:10 nFileVersion = 1001550
2018-08-30 00:52:10 Keys: 155 plaintext, 0 encrypted, 155 w/ metadata, 155 total
2018-08-30 00:52:10 ZKeys: 1 plaintext, 0 encrypted, 1 w/metadata, 1 total
2018-08-30 00:52:11  wallet                   52ms
2018-08-30 00:52:11 init message: Activating best chain...
2018-08-30 00:52:11 mapBlockIndex.size() = 988871
2018-08-30 00:52:11 nBestHeight = 982685
2018-08-30 00:52:11 setKeyPool.size() = 101
2018-08-30 00:52:11 mapWallet.size() = 84
2018-08-30 00:52:11 mapAddressBook.size() = 100
2018-08-30 00:52:11 init message: Loading addresses...
2018-08-30 00:52:11 torcontrol thread start
2018-08-30 00:52:11 Loaded 25672 addresses from peers.dat  126ms
2018-08-30 00:52:11 dnsseed thread start
2018-08-30 00:52:11 net thread start
2018-08-30 00:52:11 addcon thread start
2018-08-30 00:52:11 opencon thread start
2018-08-30 00:52:11 msghand thread start
2018-08-30 00:52:11 init message: Done loading
2018-08-30 00:52:11 receive version message: /MagicBean:1.0.15/: version 170003, blocks=987153, us=73.194.145.125:50812, peer=1
2018-08-30 00:52:11 Added time data, samples 2, offset +0 (+0 minutes)
2018-08-30 00:52:12 receive version message: /MagicBean:1.0.15/: version 170003, blocks=987153, us=73.194.145.125:50814, peer=2
2018-08-30 00:52:12 Added time data, samples 3, offset -1 (+0 minutes)
2018-08-30 00:52:12 ConnectBlock: wrote 1 block notarisations in block: 03859f1a29a6e60f7fd95595f9341d80b2c09d7b0982b99eb4c404f04dcd2f3c
2018-08-30 00:52:12 UpdateTip: new best=03859f1a29a6e60f7fd95595f9341d80b2c09d7b0982b99eb4c404f04dcd2f3c  height=982686  log2_work=47.675654  tx=2735323  date=2018-08-26 22:03:10 progress=0.995027  cache=0.2MiB(19tx)
2018-08-30 00:52:12 ConnectBlock: wrote 3 block notarisations in block: 016994e4d66627ba6ab20f68c878122c482af279497005ca8e56cf24dfbf3ef6
2018-08-30 00:52:12 UpdateTip: new best=016994e4d66627ba6ab20f68c878122c482af279497005ca8e56cf24dfbf3ef6  height=982687  log2_work=47.675656  tx=2735334  date=2018-08-26 22:04:10 progress=0.995029  cache=0.6MiB(66tx)

komodod debug

call komodo_args.(/Applications/Agama.app/Contents/Resources/app/assets/bin/osx/komodod) NOTARY_PUBKEY.()
..............................................................................................................................................................................................finished loading blocks 
processing /Users/<myuseraccount>/Library/Application Support/Komodo/komodostate 122592KB, validated.-1
inds.0x200116000 validate /Users/<myuseraccount>/Library/Application Support/Komodo/komodostate.ind fsize.7746728 datalen.125534620 n.1936682 lastfpos.0
took 16 seconds to process /Users/<myuseraccount>/Library/Application Support/Komodo/komodostate 122592KB
dyld: lazy symbol binding failed: Symbol not found: ___emutls_get_address
  Referenced from: /Applications/Agama.app/Contents/Resources/app/assets/bin/osx/libgomp.1.dylib
  Expected in: /usr/lib/libSystem.B.dylib

dyld: Symbol not found: ___emutls_get_address
  Referenced from: /Applications/Agama.app/Contents/Resources/app/assets/bin/osx/libgomp.1.dylib
  Expected in: /usr/lib/libSystem.B.dylib

komodod exited with code null, crashed?

adding multiple addresses of the same coin

seems to be no straightforward way to add multiple private keys of the same coin in agama while in SPV mode to be able to view total balance. I have some $Btch split between two address due to a change address when i had hush. adding both to agamain spv mode at the same time is tripping me up. any ideas?

Sign Transactions Offline and Broadcast Online error

  1. In Tools created offline unsigned tx
  2. Using offline computer in Tools created signed tx data
  3. Back to computer in step 1 in Tools -> Push transaction pasted sign tx data then selected push
  4. Screen became white and received the below error

Confirmed in Windows and Linux

Last signed tx data used: 0100000001db702ca545dee667d8d23028da15a5322bb754df3132da53792cf9f210a10bd1000000006a47304402205df15a6176012e45d4050cf082dad0da1e61fe67db6c1755dabab236f645de1702203d047bb6b6b12e28f60083ecd1abfd7035970d9c5d9eaf444828b8895be7f6ed0121038b7822b465403063212069255ea762b6ac49318526a37a00268994f9a4fd0ec2ffffffff02808d643d000000001976a91424bbb2c41cf3a2c9c3192fb7ee4e8ba8524a437488ac85273e00000000001976a914763d7dfd7b87a788a8cf7ecda6e5ee474cc4309f88ac9ea6115c

image

Error when installing for Linux

Hello. When you install the linux installer in a shell, under a non-root user but using sudo, the app gets installed but raises the following warning message:
Problem running post-install step. Installation may not complete correctly. Error reading INI file /root/Desktop/Agama Desktop.desktop

Ram usage

Hi.

On linux, (same issue on different version and the last 0.2.43d too)

2gb of ram usage is way too much... To compare, litecoin takes 500mb.

Under 1gb should be acceptable.

Win 7 native sync

Reported by a user.

After a full native sync -> then shutdown -> then reopen -> app starts download again

Version: 41a
OS: win 7
Errors: none

Transaction history wrongly displayed

hey guys, using multipl coins in SPV mode sometiems is a bit confusing - different coins panels are mixing, for example when I click t o view the other coin - it shows the balance of it, but the transactions from the previous one

also can show 2 addresses - current wallet + the other one from confused transactions
kind of refresh bug or cache bug, not very big but someone can confuse accounts and send money from 1 coin to the other one (as 2 diff addresses displayed on 1 panel! destination address in transaction history != wallet address on top )
win 10 wallet Agama .27a

example:
transfering 10 Hush is shown also when displaying BCH SPV. In that case I can see 1 address of BCH + 1 address of Hush in BCH transaction history.
In my case BCH was added just after Hush on the coins SPV list.
After few minutes BCH shows:
Connection error!
Trying to switch to another server...
How to switch manually:
Go to "Settings", select "SPV Server List" tab, choose new server and click "OK".

Add coins with positive balance

Feature request from user:

Button to load/display all coins with >0 amounts (currently user needs to remember/ can forget he got some coins on some address)

Popular coin page addition

Feature request from user:

Front page of the wallet BEFORE LOGIN IN should display most popular coins by popularity that are available in the wallet.

Batch send tx via csv

Feature request from a user:

Batch tx send based on csv file. I believe this will be great for people processing massive payments/commerce: they prepare csv address out, address in, amount to upload and send
could be a new button in Agama, next to send and receive: send batch
opening csv entry, displaying interpretation or top rows to confirm and sending after confirmation ?

Navigate to native folder option

I think it would be useful to users if we added a "Show native folder" option in the wallet. HyperDEX does something similar from their debug menu (screenshot below) so perhaps we could do the same but open the general Komodo folder in the respective OS

image

Interest for 3rd party wallet

Hi guys. We are doing Komodo wallet for android with Guarda guides. There is a question how to add a komodo_interest function? send/claim

BTC activation/loading error

@pbca26 we found a SPV related bug. please check this recording (in qa-testing channel)
steps to reproduce:

  1. Start KMD lite mode from the shortcut and login
  2. Activate BTC, it doesn't activate
  3. Use CTRL+R to reload, it shows BTC but address, balance or tx history doesn't load

Works, only if we only activate BTC directly.

Additional note from Hermes: Neither Linux nor Mac are able to launch btc while kmd already added

Filter multi-coin wallet

Feature request from user:

Filtering options inside loaded wallet could be good for multi-coin hodlers - to filter out ERC20 or KMD assets or BTC forks or others

[feature] Have easily multiple native wallets on the same machine

Option on startup in full mode, to load up a wallet.dat file from a different folder. Or alternatively to have multiple wallet.dat files with custom names in the same folder (wallet1.dat, walletZ.dat etc.)

This can be done manually, changing names and moving the files around but it's very easy to mess it up

Agama.exe - Application Error

Received following error after install and first run on a Windows 10 x64 system. Using latest version from GitHub "AgamaApp-0.2.38-beta-windows-installer".

Agama.exe - Application Error
The application was unable to start correctly (0xc000007b). Click OK to close the application.

image

Erc20 address mismatch on 0.2.44c

Hi,
I gave a try to Agama 0.2.44c that is already on github to see how the Eth tokens work

I have some Zilliqa Erc20 on a paper wallet created long ago with Myethereumwallet, so I imported the priv key but this resulted in a different public address than expected, of course with 0 balance!

At first I feared there could be a mistake with my paperwallet but doing the same operation with Myethereumwallet+Metamask I get the expected public address with its balance

I tried multiple times and I'm positive I imported the right priv key in Agama, verified both manually and with Qr code, but it definitely results in a different public address than expected!

Add coin filter

Feature request from user:

Add filters in adding coins selection. Example filters could be: KMD assets, ERC20, BTC forks …

Problem with ZEC sending

Hello.
I have a problem's with ZEC Wallet using
When I tried to send some coins to other address, I received decode error message. Like on this screen.
How to resolve this problem?
capture
Other issue that is a wrong amount showing in transaction listing:
capture2

Button to auto activate wallets with balances

Feature Idea: Have a button in the "activate coin" section or even a setting you change so that after you enter a seed phrase, or login, Agama checks your wallet address in something like https://dexstats.info/assetviewer.php and auto activates any wallets you have a non-zero balance in.

Reason for Feature: It would be beneficial in the future as more coins perform airdrops, otherwise coins could be sitting in wallets simply because the owner doesn't realize they are there without having to check a website like dexstats, which can hurt liquidity and the likelihood other projects choose airdrops in the future.

Cons: Having this as an auto feature upon startup might take a lot of resources and make Agama run slower. Having it as a button to activate gives more control for the user and a notification explaining it may take a moment would be useful.

Additional Version of this Feature: This could also work as a button to "Check for coin balances" and it returns the information from the dexstats address viewer with all non-zero addresses/balance having a check next to them, in which someone can uncheck coins, and load only the ones they want.

Reason for Feature: This would give more control to users and limit the resources needed to activate the addresses as users may not want to activate ALL the addresses.

Cons: It's additional things that must be done, searching for balances, returning a checkable list of balances/coins, and then an additional "Activate Selected Coins" button to activate them.

[Feature] Send from single address in native

Its would be interesting if from the receive tab (where we see address list.
If we could, in the ... beside each address, have a option to send from this precise address.
empty to addr.
or
send from this addr.

just an idea :)

Can't get install using npm

Hey , this is totally new for me,
i have tried the steps given in read.me file. but i am getting error at step 6.
like ,
3) git checkout dev && git pull origin dev
4) npm install && npm install webpack
5) ./binary_artifacts.sh
6) npm start in project root folder

ubuntu@ip-172-31-25-25:~/agama$ npm start

> [email protected] start /home/ubuntu/agama
> electron .


npm ERR! Linux 3.13.0-149-generic
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "start"
npm ERR! node v6.14.4
npm ERR! npm  v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! [email protected] start: `electron .`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] start script 'electron .'.
npm ERR! Make sure you have the latest version of node.js and npm installed.

please help me with this error to figured it out.

Experimental Feature: Add regtest mode for people to safely test agama cli

Agama CLI guide was posted yesterday at https://support.komodoplatform.com/support/solutions/articles/29000026800-agama-desktop-cli-command-line-

Currently there is no link from that guide to the developer docs. This will be fixed with KomodoPlatform/developer-docs#4

If Agama could enable regtest mode, it would enable people to safely test CLI commands quickly and use docs, ask questions and get involved with minimal barrier.

ZEX transactions

Hey there
Some feedback on zex in agama
Whenever i send funds from 1 address to another it creates another address with 0.01xxx in it
44c-beta
MacOS
R addr

Discord user: mrlynch

Suggestion to save techsupport and users a ton of headaches. - Text Visibility

In Agama's passphrase input screen there is an option by clicking on the eye to render the text you are inputting as visible. Currently the default mode is obscured text. (************) The default mode should be visible text. Numerous complaints from users losing or mistyping or incorrectly saving their passphrase. This simple change can mitigate this drastically.

please remove empty space in Lite mode.

OS : windows 10
Ver : 28b

description :

please remove empty space beside total balance in Lite mode.
I think that is for Z-balance in native mode, but no need that in lite mode .

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.