{"id":18357174,"url":"https://github.com/nethermindeth/starknet-remix-plugin","last_synced_at":"2025-04-07T10:23:37.110Z","repository":{"id":181222342,"uuid":"604995324","full_name":"NethermindEth/starknet-remix-plugin","owner":"NethermindEth","description":"A plugin that brings Starknet to Remix! 🐺 ⭐","archived":false,"fork":false,"pushed_at":"2025-03-31T09:03:49.000Z","size":4887,"stargazers_count":44,"open_issues_count":29,"forks_count":32,"subscribers_count":12,"default_branch":"develop","last_synced_at":"2025-03-31T09:04:18.371Z","etag":null,"topics":["cairo","nubia","remix-ide","starknet"],"latest_commit_sha":null,"homepage":"https://remix.ethereum.org/?#activate=Starknet","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NethermindEth.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-22T08:11:13.000Z","updated_at":"2025-03-28T08:57:20.000Z","dependencies_parsed_at":"2023-07-14T15:01:59.822Z","dependency_job_id":"c608c541-3c8b-40a6-ad87-0f8e15efcd72","html_url":"https://github.com/NethermindEth/starknet-remix-plugin","commit_stats":null,"previous_names":["nethermindeth/starknet-remix-plugin"],"tags_count":28,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NethermindEth%2Fstarknet-remix-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NethermindEth%2Fstarknet-remix-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NethermindEth%2Fstarknet-remix-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NethermindEth%2Fstarknet-remix-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NethermindEth","download_url":"https://codeload.github.com/NethermindEth/starknet-remix-plugin/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247632687,"owners_count":20970202,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cairo","nubia","remix-ide","starknet"],"created_at":"2024-11-05T22:13:08.480Z","updated_at":"2025-04-07T10:23:37.097Z","avatar_url":"https://github.com/NethermindEth.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n \u003ch1\u003e Starknet Remix Plugin \u003c/h1\u003e\n\u003c/div\u003e\n\n\u003c!-- markdownlint-disable --\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"old-docs/images/starknet-remix-logo.svg\" height=\"256\"/\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![Static Badge](https://img.shields.io/badge/Try_it_out!-2f6df2)](https://remix.ethereum.org/#activate=Starknet)\n[![Pull Requests welcome](https://img.shields.io/badge/PRs-welcome-ff69b4.svg?style=flat-square)](https://github.com/NethermindEth/Starknet-remix-plugin/issues)\n[![Discord](https://img.shields.io/discord/629004402170134531?label=Discord)](https://discord.com/invite/PaCMRFdvWT)\n[![Static Badge](https://img.shields.io/badge/Telegram-2AABEE)](https://t.me/StarknetRemixPlugin)\n\n\u003c/div\u003e\n\nWelcome to the **Starknet Remix Plugin** repository! 🎉 \n\nThis powerful tool seamlessly integrates with the Remix IDE, enabling developers to effortlessly deploy and interact with Starknet contracts! Whether you're a Cairo and Starknet wizard 🧙‍♂️ or taking your very first steps, this plugin supercharges your journey by providing an effortless way to deploy and interact with Starknet contracts. Happy coding! 🚀\n\n\u003cdetails\u003e \n\u003csummary\u003eTable of Contents\u003c/summary\u003e\n\n- [Starknet Remix Plugin](#Starknet-remix-plugin)\n  - [For Users](#for-users)\n    - [Getting Started](#getting-started)\n      - Installation\n      - Usage\n      - Feedback\n  - [For Developers](#for-developers)\n    - [Installation](#installation)\n      - [API](#api)\n      - [Plugin](#plugin)\n    - [Running the Development Environment](#running-the-development-environment)\n      - [Connecting the Plugin](#connecting-the-plugin)\n  - [Support and Contributions](#support-and-contributions)\n\n\u003c/details\u003e\n\n## For users\n\nIf you're looking to utilize the capabilities of Starknet contracts within the Remix IDE, you've come to the right place. This section provides you with a straightforward guide to get started.\n\n### Getting Started\n\n1. **Installation**: Get excited, folks, no complicated installations needed here! If you're a user, all you have to do is head over to the Remix IDE and locate the Starknet Remix Plugin in the plugins section. Want to make it even simpler? Click right through to Remix using [this direct link](https://remix.ethereum.org/#activate=Starknet) and you're good to go! 🎉\n\n2. **Usage**: Once the plugin is activated, you'll find a user-friendly interface that allows you to deploy and interact with Starknet contracts. Follow the on-screen prompts and tooltips for an effortlessly smooth experience!\n\n3. **Feedback**: Your feedback is invaluable to us 🌟! If you encounter any issues or have game-changing suggestions, don't hesitate to reach out through our [Discord](https://discord.com/invite/PaCMRFdvWT) or our [Community Forum](https://community.nethermind.io/). Let's make something awesome together! 🤝\n\n### Troubleshooting\n\nMost issues with Starknet plugin or Remix itself are caused by connectivity problems (also resulting from restricted networks, web-proxies blocking certain content, etc.) or browser plugin interference. \n- A user should first attempt to disable any browser components \u0026 addons which may impact the connectivity or Javascript execution. \n- Some networks may restrict connectivity to certain sites or domains. Using a VPN connection may resolve problems observed on restricted networks.\n\nMore specific potential error causes are also described in detail below. \n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003e1. Problems when searching plugins in Remix UI\u003c/strong\u003e\u003c/summary\u003e  \n\u003cbr/\u003e\nSearching for online plugins in Remix IDE may return blank or otherwise incorrect content, such as on screenshot below:\n\n![Plugin search not working](old-docs/images/plugin-search-error.png)\nEnsure that the following URL is accessible from a web browser, and that a JSON metadata code is returned -  \nhttps://raw.githubusercontent.com/ethereum/remix-plugins-directory/master/build/metadata.json :\n\n![Correct plugin metadata](old-docs/images/plugin-metadata-connectivity.png)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003e2. Problems when launching Starknet plugin in Remix UI\u003c/strong\u003e\u003c/summary\u003e \n\u003cbr/\u003e  \nStarknet plugin launch issues may be caused by connectivity errors or plugin components being unavailable. This can be tested from web browser, as indicated below:\n\n- https://cairo-remix.nethermind.io should respond with blank page (advanced: viewing page source will reveal a React component entry HTML markup) - no errors should be reported by the browser\n- https://cairo-remix-api.nethermind.io/health should respond with `OK`\n- https://starknet-remix-devnet.nethermind.io/predeployed_accounts should respond with JSON text describing predeployed Starknet accounts\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003e3. `localStorage` access errors\u003c/strong\u003e\u003c/summary\u003e  \n\u003cbr/\u003e\nThe following error indicates that the browser is blocking access to `localStorage` element of the webpage:\n\n![localStorage access error](old-docs/images/plugin-localStorage-error.png)\nPossible causes:\n  \n   - Chrome is launched in incognito mode\n   - Chrome setting \"Block third-party cookies\" is activated (see [chrome://settings/cookies](chrome://settings/cookies)):\n![Chrome cookies settings](old-docs/images/plugin-chrome-cookies-settings.png)\nNote: even with \"Block third-party cookies\" activate, exceptions can be added to a whitelist - the whitelist must include:\n     - https://remix.ethereum.org\n     - https://cairo-remix-test.nethermind.io\n   - ...also see this [link](https://stackoverflow.com/questions/30481516/iframe-in-chrome-error-failed-to-read-localstorage-from-window-access-deni) for potential hints.\n\u003c/details\u003e\n\n## For Developers\n\n### Installation\n\n#### API\n\nOur API is built with [Rocket](https://rocket.rs/), a web framework for Rust. So, you'll need to get Rust and Cargo on your machine to get started. 🛠️\n\nThe easiest way to install Rust and Cargo is by using [rustup](https://rustup.rs/). It's the [recommended tool](https://www.rust-lang.org/tools/install) for managing Rust versions and associated tools for your project.\n\nThen:\n\n```bash\ncd api;\ngit submodule update --init;\ncargo build;\n```\n\n#### Plugin\n\nThe plugin it self is a React project, you'll need to install [pnpm](https://pnpm.io/installation#using-npm).\n\n```bash\ncd plugin;\npnpm install;\n```\n\n#### Running the development environment\n\nYou need to be running both the server and the plugin in order to have a working environment.\n\nFor your dev environment:\n\n```bash\ncd plugin;\nexport API_SERVICE_URL=http://localhost:8000\nexport STARKNET_DEVNET_URL=http://localhost:5050\npnpm run start;\n```\n\nFor an optimized build (will not listen to changes):\n```bash\nexport API_SERVICE_URL=http://localhost:8000\nexport STARKNET_DEVNET_URL=http://localhost:5050\npnpm run deploy;\npnpm run serve;\n```\n\nDepending on cairo compiler +nightly may be necessary to run locally\n```bash\ncd api;\nexport VITE_URL=http://localhost:3000\ncargo run;\n```\n\nor alternatively, you can run the server in watch mode (with `cargo watch`):\n\n```bash\nexport VITE_URL=http://localhost:3000\ncargo install cargo-watch;\ncargo watch -x run;\n```\n\nFor devnet interactions, you'll need to use [Starknet Devnet](https://github.com/Shard-Labs/Starknet-devnet).\n\n##### Connecting the plugin\n\nIn [Remix](http://remix-alpha.ethereum.org/), go to the `Plugin Manager` at the bottom of the left panel, and click on `Connect to a Local Plugin`.\n\nThen, chose a name for the plugin, and in the `URL` field, enter `http://localhost:3000`, the `Type of Connection` should `iframe` and the `Location in remix` `Side Panel` and click on `Ok`, see the image below.\n\n![Plugin Manager](./old-docs/images/plugin-import.png)\n\nYou should be all set to see the magic happen! Activate the plugin and it should now be visible and ready to be hacked with! 🚀\n\n## Support and Contributions\n\nFeel free to contribute! Spotted any [issues](https://github.com/NethermindEth/Starknet-remix-plugin/issues)? Head on over to our [good first issues](https://github.com/NethermindEth/Starknet-remix-plugin/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) or read through our [Contribution Guidelines](/old-docs/CONTRIBUTING.md) to get started. 📝\n\nJump into our [Discord channel](https://discord.com/invite/PaCMRFdvWT) and join our thriving [community](https://community.nethermind.io/)! Connect with other users, share insights, and get all your questions answered. Our community is always eager to help newcomers! 🤝\n\nWe're thrilled for you to experience the Starknet Remix Plugin, and we can't wait to see the inventive ways you'll engage with Starknet contracts! Happy coding! 💡\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnethermindeth%2Fstarknet-remix-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnethermindeth%2Fstarknet-remix-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnethermindeth%2Fstarknet-remix-plugin/lists"}