•  


GitHub - gnolang/gnonative: Develop for Gno using your app's native language
Skip to content

gnolang/gnonative

Repository files navigation

Gno Native Kit

Gno Native Kit is a framework that allows developers to build and port gno.land (d)apps written in the (d)app's native language.

Current Gno (d)apps run on desktop/laptop computers which have Go installed. To run on mobile, the (d)app would need to bundle the Go runtime, which is complicated for most developers.

However, Gno Native Kit helps bypass this complexity by using gRPC to make calls to the Gno core API and access the blockchain's realm functions on a remote Gno.land node. These API calls are a programming language-independent wrapper on top of the core supported APIs like gnoclient and crypto/keys .

Watch this Gno Native Kit tutorial to easily get started on building and bringing your (d)apps to mobile and desktop.

Build instructions

Install prerequisites for macOS 13

(If you are on Ubuntu, see the next section to install prerequisites.)

Install Xcode. To install the Command Line Developer Tools, in a terminal enter:

xcode-select --install

After the Developer Tools are installed, we need to make sure it is updated. In System Preferences, click Software Update and update it if needed.

To install asdf using brew, follow instructions at https://asdf-vm.com . In short, first install brew following the instructions at https://brew.sh . Then, in a terminal enter:

brew install asdf gnu-tar gpg jq

If your terminal is zsh, enter:

echo -e "\n. $(brew --prefix asdf)/libexec/asdf.sh" >> ${ZDOTDIR:-~}/.zshrc

If your terminal is bash, enter:

echo -e "\n. \"$(brew --prefix asdf)/libexec/asdf.sh\"" >> ~/.bash_profile

Start a new terminal to get the changes to the environment.

(optional) To install Android Studio, download and install the latest android-studio-{version}-mac.dmg from https://developer.android.com/studio . (Tested with Jellyfish 2023.3.1 .)

Install prerequisites for Ubuntu 20.04, 22.04 and 24.04

To install asdf, follow instructions at https://asdf-vm.com . In short, in a terminal enter:

sudo apt install curl git make
git clone https://github.com/asdf-vm/asdf.git ~/.asdf
echo '. "$HOME/.asdf/asdf.sh"' >> ~/.profile
source ~/.profile

Start a new terminal to get the changes to the environment.

(optional) To install Android Studio, download the latest android-studio-{version}-linux.tar.gz from https://developer.android.com/studio . (Tested with Jellyfish 2023.3.1 .) In a terminal, enter the following with the correct {version}:

sudo tar -C /usr/local -xzf android-studio-{version}-linux.tar.gz

To launch Android Studio, in a terminal enter:

/usr/local/android-studio/bin/studio.sh &

Get a copy of the repo

git clone https://github.com/gnolang/gnonative

cd gnonative

Build for Android

Set up the Android NDK

  • Launch Android Studio and accept the default startup options. Create a new default project (so that we get the main screen).
  • On the Tools menu, open the SDK Manager.
  • In the "SDK Tools" tab, click "Show Package Details". Expand "NDK (Side by side)" and check "23.1.7779620".
  • Click OK to install and close the SDK Manager.

Install the tools with asdf (only need to do once)

(If not building for iOS, edit the file .tool-versions and remove the unneeded lines for ruby and cocoapods .)

make asdf.install_tools

Build the Go code as a library

make build.android

Start metro

cd examples/js/react-native/gnoboard

yarn start

Connect your Android phone/emulator and bind its port to metro

You can either connect an Android phone via USB cable, or launch an emulator device from Android Studio.

Real device

Connect your device and bind the port to metro:

cd examples/js/react-native/gnoboard

make android.reverse_tcp
Emulator device

You can either run Android Studio and open the Android project in examples/js/react-native/gnoboard/android . If you prefer the CLI option:

android-studio ./android

Once done, bind the port to metro:

make android.reverse_tcp

Build with Android Studio

Open Android Studio and open the current Android project if it's not already done. Select the right device in the device list. Open the Run menu, and select Run app . See more: https://developer.android.com/studio/run#basic-build-run

Build for iOS

Install the tools with asdf (only need to do once)

make asdf.install_tools

If you get an error like " https://github.com/CocoaPods/CLAide.git (at master@97b765e) is not yet checked out" then reinstall cocoapods like this:

asdf uninstall cocoapods

make asdf.install_tools

Build the Go code as a library

make build.ios

Start metro

cd examples/js/react-native/gnoboard

yarn start

Open Xcode and connect your iOS device

Open Xcode and open the GnoBoard Xcode workspace: examples/js/react-native/gnoboard/ios/gnoboard.xcworkspace You can either connect an iOS phone via USB cable, or launch an emulator device from Xcode. See more: https://developer.apple.com/documentation/xcode/running-your-app-in-simulator-or-on-a-device

Select a developer certificate

In Xcode, double click on gnoboard project on the left pane, go to the Signing & Capabilities pane. In the Signing section, select your team certificate.

Build with Xcode

Select the right device in the device list. Open the Product menu, and select Run . See more: https://developer.apple.com/documentation/xcode/building-and-running-an-app

- "漢字路" 한글한자자동변환 서비스는 교육부 고전문헌국역지원사업의 지원으로 구축되었습니다.
- "漢字路" 한글한자자동변환 서비스는 전통문화연구회 "울산대학교한국어처리연구실 옥철영(IT융합전공)교수팀"에서 개발한 한글한자자동변환기를 바탕하여 지속적으로 공동 연구 개발하고 있는 서비스입니다.
- 현재 고유명사(인명, 지명등)을 비롯한 여러 변환오류가 있으며 이를 해결하고자 많은 연구 개발을 진행하고자 하고 있습니다. 이를 인지하시고 다른 곳에서 인용시 한자 변환 결과를 한번 더 검토하시고 사용해 주시기 바랍니다.
- 변환오류 및 건의,문의사항은 juntong@juntong.or.kr로 메일로 보내주시면 감사하겠습니다. .
Copyright ⓒ 2020 By '전통문화연구회(傳統文化硏究會)' All Rights reserved.
 한국   대만   중국   일본