Getting started
Highlights
The most important highlights and features of the Phaeton SDK:
-
One blockchain per app: Blockchain applications each run on their own customized blockchain.
-
Programming language:
(JavaScript) &
(TypeScript)
-
Consensus algorithm: Phaeton DPoS & Phaeton BFT
-
Hashing Algorithm: Blake3
-
Completely modular: Configure, exchange or extend any of the blockchain related logic in the application with Modules and Plugins.
-
Convenient development tools:
-
-
Bootstrap a complete default blockchain application with a single command.
-
Generate skeletons for modules, assets, and plugins.
-
Use the Phaeton SDK libraries directly in the terminal via the interactive Phaeton console.
-
Many other convenient CLI tools such as creating accounts, encrypting passphrases / messages and more.
-
-
Dashboard plugin: Communicate conveniently with your blockchain application during development via a dashboard.
-
SDK testing utilities: simplifies the testing of all components of a blockchain application by providing dedicated fixtures, mocks, and utility functions.
-
Quickstart
The quickest way to bootstrap a blockchain application with the Phaeton SDK is explained here.
Supported Operating Systems
The Phaeton SDK will run on both the Ubuntu and MacOS operating systems listed below:
-
18.04 (LTS)
-
20.04 (LTS)
-
10.13 (High Sierra)
-
10.14 (Mojave)
-
10.15 (Catalina)
-
11.04 (Big Sur)
Please note that the SDK does not come with any official support for Windows. |
Dependencies
The following dependencies need to be installed to run the Phaeton SDK:
Dependencies | Version |
---|---|
Git |
v2 (latest) |
Node.js |
v12 (latest) |
Phaeton Wingman |
v1.0.0 (latest) |
Project setup
mkdir new_app
cd new_app
phaeton init
The user is asked for the application name, description, author, and license after running phaeton init
.
Next, all the required files are created by Phaeton Wingman.
Using template "phaeton-ts" Initializing git repository Updating .phaetonrc.json file Creating project structure ? Application name new_app ? Application description My blockchain application ? Author mona ? License ISC
Start the application
Execute the following command to start the blockchain application.
./bin/run start
To verify that the application has started, check the log messages in the terminal. If the start was successful, the application will enable forging for all genesis delegates and will begin adding new blocks to the blockchain every 5 seconds.
The application CLI offers various commands to conveniently manage your blockchain application. |
To see an overview of all the available CLI commands, execute the following commands in the root folder of the application:
./bin/run --help
Using the application CLI globally
To use the application commands globally, create an alias in the .bashrc
file.
alias new_app="$HOME/new_app/bin/run" (1)
1 | Adjust to the path where your new_app is located. |
After updating the .bashrc
file, make it directly available in the terminal by executing the following command:
. ~/.bashrc
Now it is possible to conveniently run the application CLI commands from anywhere by referring to the alias.
new_app --help