npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

ethereum-remix

v0.0.4

Published

Ethereum IDE and tools for the web

Downloads

37

Readme

REMIX

Join the chat at https://gitter.im/ethereum/remix Ethereum IDE and tools for the web

REMIX WEBSITE:

Remix is avalaible at http://ethereum.github.io/remix. You can use it either inside Mist or by connecting to geth or eth. Note that connecting to Geth does not work through https.

You'll have to run your own node using the following parameters:

DO NOT DO THIS IF geth/eth STORES PRIVATE KEYS External system might be able to access your node through the RPC server.

Using Geth:

geth --rpc --rpcapi 'web3,eth,debug' --rpcport 8545 --rpccorsdomain '*'

Using Eth:

eth -j --rpccorsdomain '*'

geth will run the rpc server on http://localhost:8545, remix uses by default this url.

Remix will use this instance of Geth to retrieve the transaction and the associated trace. This instance should only be used for debugging purposes. Never use features that could have an impact on your keys (do not unlock any keys, do not use this instance together with the wallet, do not activate the admin web3 API).

INSTALLATION:

Brief instructions to build for linux(Todo add other platforms) we will add detailed instructions later

Install eth or geth, npm and node.js (see https://docs.npmjs.com/getting-started/installing-node), then do:

* `git clone https://github.com/ethereum/remix`
* `cd remix`
* `npm install`
* `npm start`

open remix/index.html in your browser.

TEST:

  • For unit tests run npm test

  • For local headless browser tests

    • run once to install selenium: npm run selenium-install
    • every time you want to run local browser tests, run: npm run test-browser

DEVELOPING:

Run npm run start_dev and open http://127.0.0.1:8080 in your browser.

Start developing and see your browser live reload when you save files

REMIX First Step:

Once remix is connected to a node, you will be able to debug transactions. There's two way of doing that:

  • using a block number and a transaction index.
  • using a transaction hash.

When loading the transaction succeed, the hash, from and to field will show up. Then the vm trace is loaded.

The debugger itself contains several controls that allow stepping over the trace and seing the current state of a selected step.

Slider and Stepping action:

The slider allows to move quickly from a state to another. Stepping actions are:

  • Step Into Back
  • Step Over Back
  • Step Over Forward
  • Step Into Forward
  • Jump Next Call (this will select the next state that refers to a context changes - CALL, CALLCODE, DELEGATECALL, CREATE)

State Viewer:

The upper right panel contains basic informations about the current step:

  • VMTraceStep: the index in the trace of the current step.
  • Step
  • Add memory
  • Gas: gas used by this step
  • Remaining gas: gas left
  • Loaded address: the current code loaded, refers to the executing code.

The other 6 panels describe the current selected state:

  • Instructions list: list of all the instruction that defines the current executing code.
  • Stack
  • Storage Changes
  • Memory
  • Call Data$
  • Call Stack

CODING STYLE:

Remix uses npm coding style: https://docs.npmjs.com/misc/coding-style Please be sure your code is compliant with this coding standard before sending PR. There's on the above page a bunch of links that propose integration with developer tools (Emacs, Atom, ...). You can also run 'npm run test' to check your local repository against the coding style.