Giter Club home page Giter Club logo

blockchain-title-deeds's Introduction

Coding in Kotlin is a lot of fun, literally...

Android

Languages and Tools

android kotlin firebase linux postman

Connect with me!

  • GitLab: @vanlinh999
  • Stackoverflow: Van Linh Nguyen
  • Linkedin: Van Linh Nguyen
  • GitHub linhvnguyen9

My's GitHub stats

willianrod's wakatime stats

blockchain-title-deeds's People

Contributors

linhvnguyen9 avatar

Stargazers

 avatar

Watchers

 avatar  avatar

blockchain-title-deeds's Issues

[Feature] Create deed

  • Create screen import wallet with private key
  • Handle logic import wallet with private key
  • Check if user is owner of contract
  • Create screen create title deed (dropdown to select values like land type, purpose)
  • Handle field validations
  • Choose photo logic
  • Handle Upload photo to IPFS
  • Handle estimate gas transaction
  • Handle making transaction
  • Add Vietnamese translations

[Enhancement] Create sale

Enhancements

  • Write test cases for trading
  • Write unit tests based on test cases
  • Allow users to upload images to trade

[Feature] Transfer ownership of deed

  • Add transfer ownership button to owned token detail
  • Input receiver address screen
  • Check for invalid receiver address
  • Add transaction detail dialog
  • Confirm transaction
  • Show response when transaction completes (error/success)
  • Pull to refresh for owned tokens list
  • Force refresh owned tokens list when returning from confirm transaction
  • Handle case user is no longer owner of token when get transaction info
  • Handle case user doesn't have enough gas

[Enhancement] Buy token

  • Add icons to sale UI in home screen
  • Sort by price asc
  • Sort by price desc
  • Sort by land size asc
  • Sort by land size desc
  • Filter by property type, purpose

[Bug] Screen is navigated to multiple time when togging between background state

Actual:

  1. User open app
  2. User press home/ multitask button
  3. User returns to app
  4. User press back
  5. Verify that user can press back and still see the same screen

Root cause: because collectAsState is called multiple time, when the UI is recreated

Fix: Wrap it around LaunchedEffect and switch to SharedFlow, so the Flow is collected only once, but still passing duplicate values to UI, unlike SharedFlow (this is neccessary when user to a screen, go back and navigate to it again)

[Feature] Cancel sale

  • Cancel button logic in deed detail screen
  • Cancel sale transaction
  • Handle case cancel when token not on sale
  • Handle case cancel when user is no longer owner of token
  • Check deed detail screen is refreshed when cancel sale

[Bug] Transfer token already for sale

When token is already for sale, transfer token to another owner returns "You're not the owner of this token"

Root cause: because the contract overrides _transfer instead of safeTransferFrom, and close sale offer doesn't allow the contract to call it

[Feature] Buy token

  • Support enumeration of all sales in contract
  • Show list of all tokens on sale
  • Add option to buy token in token detail
  • Handle buy transaction
  • Pull to refresh for home screen
  • Refresh home screen when transaction is complete
  • Show token on sale in owned deeds
  • Search list tokens by address
  • View token detail (i.e. pass token id to TokenDetailScreen)
  • Show token id in token detail

[Feature] Create sale

  • Add sale support in smart contract
  • Define sale metadata
  • Add support for sale metadata in contract
  • Upload sale metadata to Pinata
  • Create sale transaction
  • Add pull to refresh for deed detail screen
  • UI to show sale info in deed detail
  • Refresh state of deed screen when transaction completes
  • Create sale UI

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.