Skip to content

jropella/builder-examples

 
 

Repository files navigation

EVE Frontier

EVE Frontier Builder Examples

🚀 Learn to build in EVE Frontier with examples and guides.

Documentation Discord License

Welcome to EVE Frontier Building!

Welcome, this repository contains guides and examples to get started building on EVE Frontier. For more information, you can visit https://docs.evefrontier.com/.

To start building, follow the steps below to setup your local development tools and environment. If you already have the tools, make sure they are the correct version as otherwise you may have difficulties running the examples and building.

Table of Contents

  1. Installing general tools
  2. Setting up your environment
  3. Start Building!

Step 1: Installing general tools

Before you get started you need to either install, or make sure you have the required tools. Install these tools for Linux, if you use a different OS then visit https://docs.evefrontier.com/Tools and follow the guide for your operating system.

Installing Git

Install Git through https://git-scm.com/book/en/v2/Getting-Started-Installing-Git.

To confirm Git has been installed run:

git --version

Installing Node Version Manager

Install NVM using this command:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash && source ~/.bashrc

Installing Node

Install Node version 18 by using this command:

nvm install 18

Installing PNPM

Install PNPM, which is used as a more efficient version of NPM with:

npm install -g pnpm

Installing Foundry + Forge

Install foundry and restart the shell with:

curl -L https://foundry.paradigm.xyz | bash && source ~/.bashrc

Run the below command to install forge, cast, anvil and chisel:

foundryup

Step 2: Setting up your environment:

This guide will walk you through setting up a local environment for running a local Anvil node, deploying world contracts using Docker, and pulling ABIs.

Prerequisites

Ensure you have Docker installed on your system: Installation Guide

Deploying world contracts into a local node.

We have provided a docker compose file which bundles the running of the local node/world and deploying the world chain contracts to simulate the existing world. Run that with the command:

docker compose up -d

alt text

Monitor the progress of the world deployment with:

docker compose logs -f world-deployer

Once deployment is complete, you should see an output similar to the one below. Make sure to copy the world contract address and save it for future reference.

alt text

Retrieving world ABIs (Optional)

You can also retrieve the world abis and save them to the root directory from the deployment by running:

docker compose cp world-deployer:/monorepo/abis .

Step 3: Start Building!

Now that your local tools and development environment is set up, you're ready to start building!

To begin, navigate to the desired example directory then follow the instructions outlined in its README file. For more information on Smart Assemblies you can visit the Smart Assemblies Documentation.

cd smart-storage-unit
cat readme.md

Bonus Tip

Run the local indexer, explore, interact and observe the state changes using world explorer

From any of the example root folder for example (builder-examples/smart-storage-unit/) run the below command to run a local world explorer to see all changes in realtime:

pnpm explorer <worldAddress>

eg: pnpm explorer 0x8a791620dd6260079bf849dc5567adc3f2fdc318

The command should then output something like this:

alt text

You can view the state of MUD tables by using the explore tab

alt text

You can interact with smart contract functions with the interact tab

alt text

Example Projects

Create a SSU vending machine for item trading

Configure a Smart Turret with a custom strategy

Control access to a Smart Gate based on corporation membership

Need Help?

Documentation Smart Assemblies Community

License

MIT License

About

examples of the kind of stuff builders can create on top of the current MUD infrastructure

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Solidity 56.6%
  • TypeScript 30.0%
  • JavaScript 6.9%
  • Shell 6.2%
  • Other 0.3%