{"id":49841863,"url":"https://github.com/Scetrov/efctl","last_synced_at":"2026-05-30T21:00:41.079Z","repository":{"id":340652286,"uuid":"1166984576","full_name":"Scetrov/efctl","owner":"Scetrov","description":"EVE Frontier Development Utility — spin up EVE Frontier localnet environments fully provisioned with a single `efctl env up` command; monitor events with `efctl env dash` interact with `efctl graphql` and `efctl world`.","archived":false,"fork":false,"pushed_at":"2026-05-21T20:40:43.000Z","size":16027,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-22T05:58:16.720Z","etag":null,"topics":["cli","developer-tools","docker","environment-management","eve-frontier","graphql","move","podman","sui"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Scetrov.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-02-25T20:28:57.000Z","updated_at":"2026-05-21T20:40:46.000Z","dependencies_parsed_at":"2026-02-26T00:01:44.645Z","dependency_job_id":null,"html_url":"https://github.com/Scetrov/efctl","commit_stats":null,"previous_names":["scetrov/efctl"],"tags_count":19,"template":false,"template_full_name":null,"purl":"pkg:github/Scetrov/efctl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Scetrov%2Fefctl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Scetrov%2Fefctl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Scetrov%2Fefctl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Scetrov%2Fefctl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Scetrov","download_url":"https://codeload.github.com/Scetrov/efctl/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Scetrov%2Fefctl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33709269,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-30T02:00:06.278Z","response_time":92,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["cli","developer-tools","docker","environment-management","eve-frontier","graphql","move","podman","sui"],"created_at":"2026-05-14T07:01:36.526Z","updated_at":"2026-05-30T21:00:41.072Z","avatar_url":"https://github.com/Scetrov.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# ⚡ efctl\n\n![efctl Logo](https://raw.githubusercontent.com/Scetrov/efctl/refs/heads/main/assets/logo.png)\n\n\u003e [!IMPORTANT]\n\u003e `efctl` is a high-performance CLI designed to automate the lifecycle of EVE Frontier local world contracts and smart gates.\n\nBuilt with **Go**, it provides a premium interface to seamlessly initialize the Sui playground environment and interact with the local blockchain.\n\n## Features\n\n- **Automated setup**: Fetches and prepares the local EVE Frontier environment in seconds.\n- **Smart Gate lifecycle**: Supports `up` and `down` commands to gracefully manage container lifecycles.\n- **Builder Flow automation**: Includes `extension` and `run` commands to quickly initialize, publish, and interact with extensions in the builder-scaffold container.\n- **GraphQL query tools**: Interact dynamically with the local Sui GraphQL RPC to query objects and packages.\n- **Dependency validation**: Quickly verifies mandatory local prerequisites (like Docker/Podman, Git, and open ports).\n\n## Installation\n\nBelow are one-liner installers for each platform. They automatically detect your CPU architecture (`amd64` / `arm64`) and download the correct binary from [GitHub Releases](https://github.com/Scetrov/efctl/releases).\n\n\u003e [!TIP]\n\u003e Replace `latest` with a specific tag (e.g. `v0.1.0`) to pin a version.\n\n---\n\n### Linux\n\n#### curl\n\n```bash\ncd ~ \u0026\u0026 curl -fsSL https://github.com/Scetrov/efctl/releases/latest/download/efctl-linux-$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/') \\\n  -o /tmp/efctl \u0026\u0026 chmod +x /tmp/efctl \u0026\u0026 mkdir -p ~/.local/bin \u0026\u0026 mv /tmp/efctl ~/.local/bin/efctl\n```\n\n#### wget\n\n```bash\ncd ~ \u0026\u0026 wget -qO /tmp/efctl https://github.com/Scetrov/efctl/releases/latest/download/efctl-linux-$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/') \\\n  \u0026\u0026 chmod +x /tmp/efctl \u0026\u0026 mkdir -p ~/.local/bin \u0026\u0026 mv /tmp/efctl ~/.local/bin/efctl\n```\n\n---\n\n### macOS\n\n#### curl (Homebrew not required)\n\n```zsh\ncd ~ \u0026\u0026 curl -fsSL \"https://github.com/Scetrov/efctl/releases/latest/download/efctl-darwin-$(uname -m | sed 's/x86_64/amd64/;s/arm64/arm64/')\" \\\n  -o /tmp/efctl \u0026\u0026 chmod +x /tmp/efctl \u0026\u0026 mkdir -p ~/.local/bin \u0026\u0026 mv /tmp/efctl ~/.local/bin/efctl\n```\n\n---\n\n### Windows (PowerShell)\n\n```powershell\n\u0026 {\n  $isAdmin = ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)\n  if ($isAdmin){\n    throw \"Please run this script as a non-administrator.\"\n  }\n  cd ~\n  $arch = if ($env:PROCESSOR_ARCHITECTURE -eq \"ARM64\") { \"arm64\" } else { \"amd64\" }\n  $url = \"https://github.com/Scetrov/efctl/releases/latest/download/efctl-windows-$arch.exe\"\n  $dest = Join-Path $HOME \"bin\\scetrov\\efctl\\efctl.exe\"\n  New-Item -ItemType Directory -Force -Path (Split-Path $dest) | Out-Null\n  Invoke-WebRequest -Uri $url -OutFile $dest\n  $userPath = [Environment]::GetEnvironmentVariable(\"Path\", \"User\")\n  if ($userPath -notlike \"*$(Split-Path $dest)*\") {\n    [Environment]::SetEnvironmentVariable(\"Path\", \"$userPath;$(Split-Path $dest)\", \"User\")\n  }\n  Write-Host \"efctl installed to $dest — restart your terminal to use it.\"\n}\n```\n\n\u003e [!NOTE]\n\u003e This installs to `~/bin/scetrov/efctl` and adds it to your user `PATH`. You may need to restart your terminal for the `PATH` change to take effect.\n\n---\n\n### From Source\n\nEnsure you have [Go 1.26.2+](https://go.dev/dl/) installed.\n\n```bash\ngit clone https://github.com/Scetrov/efctl.git\ncd efctl\ngo build -trimpath -ldflags=\"-s -w\" -o efctl main.go\nmkdir -p ~/.local/bin \u0026\u0026 mv efctl ~/.local/bin/   # Linux/macOS\n# Windows: move efctl.exe to a directory in your PATH\n```\n\n\u003e [!NOTE]\n\u003e Make sure `~/.local/bin` is in your `PATH`. Add `export PATH=\"$HOME/.local/bin:$PATH\"` to your shell profile if needed.\n\n## Quick Start\n\nTo spin up your local environment:\n\n```bash\nmkdir -p ~/ef\ncd ~/ef\nefctl env up\n```\n\n![efctl demo](https://raw.githubusercontent.com/Scetrov/efctl/main/assets/efctl_2026_02_opt.gif)\n\n## 📚 Documentation\n\nDetailed documentation is available in the repository:\n\n- **[Usage Guide](USAGE.md)**: Comprehensive command reference and configuration guides.\n- **[CLI Reference](docs/efctl.md)**: Auto-generated command-line documentation.\n- **[Contributing](CONTRIBUTING.md)**: Guidelines for contributing to the project.\n- **[Security](SECURITY.md)**: Security policy and reporting.\n\n---\n\nAdd the output directory to your PATH:\n\n```bash\nexport PATH=$PWD/output:$PATH\n```\n\nBuild the project:\n\n```bash\nmake build\n```\n\nRun tests:\n\n```bash\nmake test\n```\n\n## AI Tooling\n\nThis repository includes project-local context-mode configuration for both Gemini CLI and VS Code Copilot.\n\n- Gemini CLI reads [.gemini/settings.json](.gemini/settings.json) and [GEMINI.md](GEMINI.md).\n- VS Code Copilot reads [.vscode/mcp.json](.vscode/mcp.json), [.github/hooks/context-mode.json](.github/hooks/context-mode.json), and [.github/copilot-instructions.md](.github/copilot-instructions.md).\n\nMachine-level prerequisite:\n\n```bash\nnpm install -g context-mode\n```\n\nAfter installing, restart Gemini CLI and VS Code so both clients pick up the MCP server and hooks.\n\n## Contributing\n\nWe welcome contributions! Please see our [Contributing Guidelines](CONTRIBUTING.md) for more details.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FScetrov%2Fefctl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FScetrov%2Fefctl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FScetrov%2Fefctl/lists"}