StarkNet Implementation on Ubuntu

Esther Oche
Web3 Writers Guild
Published in
4 min readNov 15, 2023

StarkNet is an open source project, it means that the source code and related materials have been made publicly available for developers to inspect, modify, and contribute to. Open-sourcing a project fosters collaboration, transparency, and innovation within the community.

Starknet is a Layer-2 network that makes Ethereum transactions faster, cheaper, and more secure using zk-STARKs technology. Think of it as a boosted layer on top of Ethereum, optimized for speed and cost.

Ubuntu is a popular open-source Linux distribution that provides a user-friendly and versatile operating system. Developed by Canonical Ltd., Ubuntu is known for its ease of use, regular release cycles, and strong community support. It is based on the Debian architecture and includes the GNOME desktop environment by default, although other desktop environments can be installed. Ubuntu is widely used for personal computers, servers, and cloud computing, and it emphasizes free and open-source software principles. The operating system is named after the African philosophy of ubuntu, which emphasizes community and interconnectedness.

Open source features in StarkNet

  1. Access to Source Code: Developers can access and review the source code of StarkNet. This allows for a deeper understanding of the technology and enables the community to contribute improvements, report issues, and propose new features.
  2. Community Collaboration: With an open-source approach, the development process becomes more collaborative. Community members can suggest changes, fix bugs, and contribute to the overall improvement of the project.
  3. Customization: Users and developers have the flexibility to customize the StarkNet code to meet their specific requirements or to experiment with new ideas. This can lead to the development of various applications and use cases.
  4. Peer Review: The open-source model encourages peer review, where developers can analyze and critique each other’s code. This helps ensure the reliability, security, and overall quality of the software.
  5. Learning and Education: Open-source projects are valuable resources for learning. Developers, students, and researchers can study the codebase to gain insights into blockchain technology, zero-knowledge proofs, and scalability solutions.

Key features of StarkNet

  1. Low Costs: Transactions on Starknet cost less than on Ethereum. Future updates like Volition and EIP 4844 will make it even cheaper.
  2. Developer-Friendly: Starknet lets developers easily build decentralized apps using its native language, Cairo.
  3. Speed and Efficiency: Upcoming releases aim to make transactions even faster and cheaper.
  4. CVM: Thanks to Cairo, Starknet runs on it´s own VM, called Cairo VM (CVM), that allow us to innovate beyond the Ethereum Virtual Machine (EVM) and create a new paradigm for decentralized applications.
  5. Account Abstraction: Implemented at the protocol level, this facilitates diverse signing schemes while ensuring user security and self-custody of assets.
  6. Volition: Will be implemented on testnet during Q4 2023 will allow developers to regulate data availability on Ethereum (L1) or on Starknet (L2). Reducing L1 onchain data can radically reduce costs.
  7. Paymaster: Starknet will allow users to choose how to pay for transaction fee, follows the guidelines laid out in EIP 4337 and allows the transaction to specify a specific contract, a Paymaster, to pay for their transaction. Supports gasless transactions, enhancing user accessibility.

Step by Step guide on how to implement StarkNet project on Ubuntu

To run Starknet as an open source full node on Ubuntu, you will need to install and setup Ubuntu first

  1. Download and install the lastest version Ubuntu 23.10
  2. Select your downloaded ISO, choose your USB flash drive, and then click Flash! to install
  3. Insert the USB flash drive into the laptop or PC you want to use to install Ubuntu and boot or restart the device.
  4. Set up your installation
  5. Install Ubuntu.
  6. Create a username and a strong password.
  7. congratulations your Ubuntu is well installed

Let go start starkNet contract on Ubuntu

Then,

Step by Step guide to make Starknet working enivironment ready on Ubuntu

It is important to make sure this three items are working in your PC

scarb --version  # For Cairo code compilation
starkli --version # To interact with Starknet
katana --version # To declare and deploy on local development

Scarb Package Manager Installation

Open a terminal and execute the following command:

curl --proto '=https' --tlsv1.2 -sSf https://docs.swmansion.com/scarb/install.sh | sh

Restart your terminal and confirm installation:

scarb --version

2. Starkli Installation

Easily install Starkli using Starkliup, an installer invoked through the command line.

curl https://get.starkli.sh | sh
starkliup

Restart your terminal and confirm installation:

starkli --version

3. Katana Node Installation

To install Katana, use the dojoup installer from the command line:

curl -L https://install.dojoengine.org | bash
dojoup

After restarting your terminal, verify the installation with:

katana --version

In addition, install

curl -L https://raw.githubusercontent.com/rust-lang/rustlings/main/install.sh | bash

Conclusion

Ubuntu is a powerful and versatile operating system that is well-suited for Starknet smart contracts development and deployment. Its popularity, compatibility with Starknet infrastructure, and community-driven resources make it a compelling choice for developers.

References:

https://book.starknet.io/

https://ubuntu.com/download/desktop

--

--