Smart Contract developed in PyTEAL, Android application implemented in Java to build a dApp for carpooling in Algorand Blockchain

Overview

Algorand Carsharing Android

Smart Contract developed in PyTeal to build a dApp for car sharing in Algorand Blockchain.
Application developed in Java.
Linked to Algorand Carsharing Python project.

This is a project developed for my Master's Degree in Computer Science.
Feel free to read the thesis if you want to achieve a better knowledge on the work done.

Requirements

Sandbox environment

In order to deploy any transaction on Algorand Blockchain you need first to set up an Algorand node.
You can easily set up an Algorand sandbox node following the official guide or following this tutorial.
The project version is v0.68

To start the Testnet sandbox:

  • ./sandbox up testnet

On testnet the indexer is not enabled, in order to use it you can switch on release sandbox:

  • ./sandbox up release

Note: a working indexer instance is required to use this application.

Account Setup

In order to use the application a valid Algorand Account must be provided.
You can generate a new account with goal CLI:

  • ./sandbox goal account new

Remember to fund the account if you're using a public network.
If you're using a private network you can export an already funded account in this way:

  • ./sandbox goal account list
  • ./sandbox goal account export -a {address}

Save the mnemonic and paste it on the Account section of the app to set the user.

Smart Contracts

The Smart Contracts already compiled are stored in the assets folder.
You can find the original PyTEAL version on the Python version.

Environment and dependencies

  • For this project an Android emulator with API 30 are used

Android Application

Application Overview

app_overview.mp4

Create a new trip

trip_create.mp4

Update a trip

trip_update.mp4

Delete a trip

trip_delete.mp4

Terminate a trip

trip_start.mp4

Join a trip

trip_join.mp4

Leave a trip

trip_leave.mp4
You might also like...
Pokedex - Pokedex demo application developed using Hilt, Coroutines, Jetpack Compose, View Model, Coil, Accompanist, Material Design based on MVVM atchitecture Professional Weather Application Developed With Kotlin
Professional Weather Application Developed With Kotlin

ExWeather professional android application for checking weather status, developed with kotlin. About This Project This application helps users to trac

Matt Kuhn 2021, Implemented in Kotlin

Advent of Code Matt Kuhn 2021, Implemented in Kotlin

Here OneSignal push and in-app-message have been implemented

OneSIgnal demo project Here we have implemented OneSignal inAppMessage and Push Notification ANDROID SDK SETUP WITH ONESIGNAL: https://documentation.o

How to build an Android application using the Uncle Bob's Clean Architecture approach
How to build an Android application using the Uncle Bob's Clean Architecture approach

MVI-Clean-Architecture This is a sample app & basic code that demonstrate how to

A complete app that demonstrate how to build an Android application using the Uncle Bob's Clean Architecture approach
A complete app that demonstrate how to build an Android application using the Uncle Bob's Clean Architecture approach

📷 Blog taking application utilizing Ktor REST-API and following modern practices: Kotlin, Coroutines, Flows, Channels, Room, Work Manager, Navigation Component, MVI, Clean Architecture, Modularization, Dagger Hilt, Tests...

Build a simple timer application with kotlin
Build a simple timer application with kotlin

3. Build a simple timer application which provides below features: a. A simple U

Order Food Application Build With Kotlin MVVM (Model - View - ViewModel)
Order Food Application Build With Kotlin MVVM (Model - View - ViewModel)

Kotlin Order Food Application Build With Kotlin MVVM (Model - View - ViewModel) Clean Architecture, MSSQL API, Beautiful Design UI, Smooth Animations Using Tools And Components Supported By Google And By Most Of The Android Development Community

A modular and portable open source XMPP client library written in Java for Android and Java (SE) VMs

Smack About Smack is an open-source, highly modular, easy to use, XMPP client library written in Java for Java SE compatible JVMs and Android. Being a

Releases(1.0)
  • 1.0(May 4, 2022)

    Release of the Android application for a master's degree thesis project. This application is still a demonstrative application, it should be used for academic purposes.

    Source code(tar.gz)
    Source code(zip)
Owner
Bara
Ca' Foscari University of Venice. Master's degree in Computer Science Software Dependability and Cyber Security. Cybersecurity enthusiast.
Bara
Android App to connect to the DIY smart sensors build with esp32 microcontrollers

Smart Sensors Android App This Android APP is used to connect a current Android phone with a smart sensor via Bluetooth Low Energy (BLE). This project

Martin Verges 1 Jan 18, 2022
An E-Commerce android App whose frontend is implemented using Kotlin & XML files and backend/database is implemented using My SQL & PHP files

An E-Commerce android App whose frontend is implemented using Kotlin & XML files and backend/database is implemented using My SQL & PHP files

null 4 Aug 25, 2022
Blockchain-based android application

Android-Blockchain Blockchain based android application For Reference https://drive.google.com/drive/folders/1w-nPrcIONq1s4RY9yRXSqxcU6gaaE-uN?usp=sha

Akshat Sahijpal 0 Dec 23, 2021
an attempt to learn basics of blockchain and cryptocurrency

basicBiedaCoin An attempt to learn basics of blockchain and cryptocurrency Useful sources: But how does bitcoin actually work? Implementing a Simple B

Dawid Urbanowski 1 Oct 29, 2021
Simple blockchain example written in Kotlin

Blockchain in Kotlin This is a plain example how Cryptographic blockchains work by constructing a blockchain containing three blocks. Once constructed

Andrius Degutis 0 Feb 28, 2022
A Kotlin/JVM based library for BitShares blockchain.

A Kotlin/JVM based library for BitShares blockchain. It implements most functions of BitShares Core including objects (de)serialization, transactions sign/broadcast, wallet create/restore, and more.

Husk 1 Apr 9, 2022
Smart-flight - This app was created to learn and practice Kotlin language

Smart Flight This app was created to learn and practice Kotlin language. Works o

Kamil 1 Feb 9, 2022
Simple application with some famous graph algorithm implemented by Jetpack Compose framework

GraphAlgorithm This Application was implemented by Jetpack Compose framework. The dagger-hilt library was used for dependency injection and Room libra

Amirreza lotfi 8 Aug 17, 2022
An small android app based on banking logic, usilng SQLITE as database, material design, navigation drawer implemented

Android Banking App Project - Using Sqlite The Banking app using java in android studio and sqlite for crud. Packages Used Material Design Contributin

Md-Mahin-Rahman 4 Dec 6, 2022
The application is developed using Modern tools/libraries with UI implementations with Navigation architecture

This is mobile application which actual users will interact with. The application is developed using Modern tools/libraries with UI implementations with Navigation architecture. It connects with the Dog API to retrieve data. more detail of api can be found here - https://dog.ceo/dog-api/documentation/random This project a basic example of Retrofit and mvvm

null 4 Feb 3, 2022