Excalibur is an Ethereum Application Client optimized for speed and security.
Use Excalibur to directly interface with applications deployed on EVM networks.
We use cargo-wix
to build Windows installers so Excalibur can be installed on Windows.
cargo wix init --package excalibur-app --force
cargo wix --package excalibur-app --nocapture --name Excalibur
. The name flag will make this the application name saved in Program Files.We use cargo-bundle
to build MacOS and Linux bundles, but have not tested Excalibur on Linux.
cargo bundle --target {target}
. target should match rust compiler targets.Interacting with smart contracts that are deployed on Ethereum and other EVM blockchains is delivered through a fragmented technology stack written in multiple different languages and often hosted in a browser website. This creates centralization, expands attack vectors, and negatively impacts performance.
Excalibur is an Ethereum Application Client which vertically integrates all components of the EVM tech stack into one package. This enables end users to directly interface with even the lowest parts of the stack, e.g. Ethereum nodes. It also empowers existing capabilities to be more performant, for example, transaction simulation, fetching blockchain data, and transaction execution.
You will need to cargo install mdbook
and cargo install mdbook-katex
to be able to render the journal properly.
To see the journal you can run from the root directory:
mdbook serve journal
and visit localhost:3000
in your browser.
$PATH
.$PATH
.$PATH
.cargo install --path .
There is one (let's keep it that way!) dependency: primitivefinance/solstat. This has its own dependencies forge-std and solmate, which we also use. Make sure to use forge to install this prior to building the contracts.
make
cargo run ui
cargo run simulate <config>
Excalibur is a full-stack client for interacting with EVM blockchain applications in simulated and live environments.
Excalibur only has a few underlying primitives that can be chosen from to construct color and text.
Excalibur's fully vertical application design makes it easy to plug in more components of the Ethereum stack. In the future, Excalibur will be able to easily connect to local RETH nodes.
if you have mdbook installed you can run
```bash
mdbook serve
```
from the root of the repository to see our living documentation of our though processes and development. This is by no means proffesional or complete more so a compilation of the teams notes and journal throughout the development process.
Excalibur is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software.