Celo Tech Talks Building a mobile first blockchain platform

Introduction

The transcript is from a Celo Tech Talk session, where the focus is on building a mobile-first blockchain platform. The talk is part of a series aimed at software engineers working on various aspects of technology, including mobile applications, distributed systems, blockchain, and cryptography.

Speaker Introductions

The presenters for this session are Judy Piper and John Procedure. Judy is a member of the NGO Partner Ecosystem at Celo, while John is an amiable mobile application developer working on Celo. They express excitement about discussing Celo technology, their mission, and the development of a mobile-first full-stack blockchain platform.

Story of Kaboom and Mission

The speakers begin by sharing a story about a refugee named Kaboom, highlighting the challenges he faces due to the lack of access to basic financial tools and services. They emphasize that Kaboom’s situation is not unique and that globally, billions of people are unbanked or lack recognized IDs. Celo Labs’ mission is to build a new financial system that creates conditions of prosperity for everyone, ensuring basic needs are met, individuals can grow, and people support each other.

Building a Full Stack Solution

Based on user feedback and research, Celo Labs realized that building a full-stack solution was necessary to overcome the challenges faced by users like Kaboom. They explain that instead of just developing a decentralized infrastructure or application solutions, Celo chose to create a full-stack blockchain platform. The platform is EVM (Ethereum Virtual Machine) compatible, allowing developers to use Ethereum-based programming tools to build applications on Celo easily.

Achieving Prosperity: Stable Coins and Identity

Celo’s mobile-first platform incorporates a stablecoin protocol called Layer 2, which enables stable value currencies to be easily accessible worldwide. The platform also includes a lightweight identity protocol that links phone numbers to cryptographic addresses on the network. Additionally, Celo has implemented chain governance for upgrades without the need for opt-ins, ensuring stability and ease of use for end-users.

Onboarding Process and Wallet Functionality

The speakers discuss the onboarding process for Celo Wallet, emphasizing its user-friendly and secure nature. They describe the steps, including entering a phone number, receiving verification codes, and setting up a PIN for account security. The Celo Wallet application runs on both iOS and Android using React Native, enabling a rich mobile UI experience. The wallet connects to the Celo network using ultralight sync and interacts with the network as a node, embedding the Celo blockchain code.

Technical Details: Smart Contracts and Testing

The speakers delve into technical aspects, explaining how Celo Wallet utilizes smart contracts written in Solidity. They mention the Silvio stable token smart contract, which is ERC-20 compliant and part of the Celo SDK. The app uses Redux Saga to manage asynchronous tasks and Jest for unit testing and Detox for end-to-end testing. They highlight the importance of maintaining application functionality while making changes.

Conclusion and Q&A

The session concludes with a focus on Celo’s mission, emphasizing the importance of shaping a culture where everyone’s basic needs are met, growth paths are provided, and support is available. The speakers address questions related to phone number verification, compatibility with other blockchain platforms, and the absence of cross-border payment features. They also explain the use of three verification codes for phone number validation, balancing security and user experience.