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

@yyikaka/remixd

v1.0.0

Published

remix server: allow accessing file system from remix.ethereum.org and start a dev environment (see help section)

Downloads

70

Readme

Remixd

npm version npm npm

@remix-project/remixd is an NPM module that intends to be used with Remix IDE web and desktop applications. It establishes a two-way websocket connection between the local computer and Remix IDE for a particular project directory.

remixd can be used to setup a development environment with other popular frameworks like Hardhat, Truffle, Slither etc.

More details are explained in the documentation.

Installation

npm install -g @remix-project/remixd

NOTE: When the remixd NPM module is installed, it also installs Slither, solc-select and sets solc to latest version i.e. 0.8.15 currently.

ALSO NOTE: Python3.6+ (pip3) needs to already be installed on the System. In case of any discrepancy, Slither can also be installed along with other dependencies using the command:

> remixd -i slither

(This packaging of Slither with the remixd module is supported since Remixd v0.6.3)

Warning for quite old users

There is a new version of remixd with a new npm address: https://npmjs.com/package/@remix-project/remixd If you were using the old one you need to:

  1. uninstall the old one: npm uninstall -g remixd
  2. install the new: npm install -g @remix-project/remixd

remixd command

The remixd command without options shares present working directory and the shared Remix domain will be https://remix.ethereum.org, https://remix-alpha.ethereum.org, or https://remix-beta.ethereum.org

The remixd command is:

> remixd

If you are using Remix from localhost or you are not running the command from your working directory, you’ll need to use the command with flags.

> remixd -h
Usage: remixd [options]

Establish a two-way websocket connection between the local computer and Remix IDE for a folder

Options:
  -v, --version               output the version number
  -u, --remix-ide  <url>      URL of remix instance allowed to connect
  -s, --shared-folder <path>  Folder to share with Remix IDE (Default: CWD)
  -i, --install <name>        Module name to install locally (Supported: ["slither"])
  -r, --read-only             Treat shared folder as read-only (experimental)
  -h, --help                  output usage information

Example:

    remixd -s ./shared_project -u http://localhost:8080

Share a project directory

remixd -s ./shared_project -u https://remix.ethereum.org

The current user should have read/write access to the folder (at least read access).

It is important to notice that changes made to the current file in Remix IDE are automatically saved to the local computer every 5000 ms. There is no Save action. But the Ctrl-Z (undo) can be used.

Furthermore:

  • No copy of the shared folder are kept in the browser storage.
  • Clicking on the new folder or new file icon under localhost will create a new file or folder in the shared folder.
  • If a folder does not contain any file, the folder will not be displayed in the explorer (that might change).
  • Symbolic links are not forwarded to Remix IDE.

Ports Usage

remixd creates a websocket connections with Remix IDE on different ports. Ports are defined according to specific purpose. Port usage details are as:

  • 65520 : For remixd websocket listener, to share a project from local device with Remix IDE. Shared folder will be loaded in the Remix IDE File Explorer workspace named localhost See more
  • 65522 : For Hardhat websocket listener, to enable the Hardhat Compilation using Remix IDE Solidity Compiler plugin, if shared folder is a Hardhat project See more
  • 65523 : For Slither websocket listener, to enable the Slither Analysis using Remix IDE Solidity Static Analysis plugin See more
  • 65524 : For Truffle websocket listener, to enable the Truffle Compilation using Remix IDE Solidity Compiler plugin, if shared folder is a Truffle project See more

Note: Please make sure your system is secured enough and these ports are not opened nor forwarded.