Skip to main content

Don't have an API key yet?

Sign-up to Moralis to get your free API key and start building today.

Get Your Free API Key
Version: 2.2

How to Fetch Web3 Data with Flutter

This tutorial integrates a Flutter frontend with a Flask backend using the Moralis API to get NFT data.

Video Tutorial: Get Any Wallet NFTs Using Flutter and the Moralis API

For a visual guide, check out our YouTube tutorial:

NFT Application Structure

The application is composed of the following:

  • A backend server
  • A login page
  • An NFT list component
  • A main application file

Backend Server

The Flask-based backend server serves as the bridge between the Moralis API endpoints and the Flutter frontend.

NFT List Component

The NFT list component in the Flutter app takes the user's blockchain address and chain as parameters for fetching NFT data. It then displays a list of NFTs associated with the user's account, where each NFT is displayed in a Card, showing its name, image, and description.

Login Page

The login page manages user authentication using WalletConnect.

Main Application File

The main application file is the entry point of the Flutter application, setting the foundation for the app's routing and UI structure.

Step 1: Set Up Moralis

Read the article, Setting Up Moralis: Getting Started, and make sure to finish all the steps. Only after that can you go ahead and complete this guide.

Step 2: Make HTTP Requests to the Moralis REST API

You can find a detailed guide in Flutter's official documentation: Fetch data from the internet.

Step 3: Get Any Wallet NFTs

Follow our tutorial on how to get all the NFTs owned by an address.

Support

If you face any trouble following the tutorial, feel free to reach out to our community engineers in our Discord or forum to get 24/7 developer support.