NFT marketplace

Designing custom NFT marketplace within
the Web3 industry
Industry:

Services:

NFT marketplace development
Custom web development
Database optimization
Data protection
Payment handling
1

Project overview

In 2021, our company was contacted by a US startup specializing in digital collectibles, and serving NFT creators. The client was interested in creating a unique NFT marketplace for viewing, renting and securely purchasing digital assets, which can then be exchanged for physical items.

The team, provided by Abto Software, successfully covered the POC and delivered a custom NFT marketplace. The product’s core functionality includes selling/purchasing, advanced search, search filters, voucher minting, and more, all wrapped in an intuitive, user-friendly UI/UX design.

2

Main goals

The project’s main goal was designing and delivering a manageable NFT marketplace:

  • To provide both creators and collectors with the necessary functionality to sell and buy digital assets, and seamlessly mint – create on the blockchain – NFTs 
  • To provide cost efficiency, improved security, and independence 
3

How the solution works

Key components:

 

User interface

  • REST APIs: Express JS, typescript language
  • Front-end part: Next JS, Tailwind CSS as a low-level framework
  • Blockchain part: Flow network, cadence language

Video & image uploads
AWS MediaConvert to compress and convert video content:

 

Lambda function to crop and upload image content to Pinata IPFS:

Smart Contracts
Smart Contacts is a custom contract publicly shared with the Flow community with support for administration. This way, NFTs can be redeemed by the platform’s administration and exchanged for rewards.

 

Code infrastructure
For the 100% safe and smooth creation, modification and setup of infrastructure, our team picked Terraform. The solution now has two environments, for staging and production.
A diagram of the created infrastructure:

 

A diagram explaining the core functionality of the NFT marketplace:

4

Our contribution

We covered:

  • The design of a single-page application by using Next JS
  • The implementation of the REST API for the smooth interaction with the flow blockchain
  • The setup of the AWS environment

At this project stage, we configured the following AWS services:

  • ECS
  • RDS PostgreSQL database
  • Lambda functions
  • Elemental MediaConvert
  • S3 buckets
  • Amazon Cloudfront
5

Main challenges

During the project’s scope, our team faced challenges related to:

 

1.    The creation of a reliable system for configuration and minting of vouchers 

The client was using shell scripts to generate NFT tokens, but aimed to do it by using the administration panel.

 

We created: 

  • A stepper for the system’s administrator to generate and customize NFT tokens and vouchers 
  • Background services for minting and distribution

2.    The integration of several payment methods: MoonPay, MetaMask, and Flow 

One of the problems was handling several different payment methods with completely different APIs and flows. To integrate the different payment methods, we created a gateway for the different APIs and unified the whole payment process by using the Queue, WebHook and Background services.

 

3.    The synchronization of data from blockchain with database 

It might be difficult to trace the bought NFT tokens as they can be easily purchased on some external sources. To provide simplified monitoring, we implemented Graffle WebHooks together with Cron Jobs.

Tools and technologies

Tech stack:

  • JavaScript
  • TypeScript
  • Cadence
  • Node.JS
  • Express.JS
  • Postgres
  • Vue.JS
  • Next.JS
  • TailwindCSS

Infrastructure:

  • Terraform
  • AWS
  • Kubernetes
  • Lambdas

Blockchain:

  • Flow
  • Blocto
  • MetaMask
  • MoonPay
  • Graffle

Timeline:

  • June 2021 - July 2022

Team:

  • 1 Project Manager
  • 1 DevOps Engineer
  • 2 Back-end Developers
  • 1 Front-end Developer
  • 1 Blockchain Developer
  • 1 UI/UX Designer
6

Value delivered to business

The custom NFT marketplace is designed to ease the interaction with content and other community members. Today, content isn’t just about consumption – it’s about cultural heritage, having influence, and opportunities for investment.

 

The delivered NFT marketplace:

  • Reduces costs
    By using traditional marketplaces, the client would have to put up with some additional transactional charges. But with the tailor-made NFT marketplace, the startup can enjoy the benefits of decentralization and omit conducting transactions through intermediaries.
  • Increases security
    Traditional marketplaces are often the subject of fraudulence and dangerous for both the seller and customer. By leveraging blockchain technology, we provided for security and transparency of every single transaction.  
  • More independence
    Since the NFT marketplace is decentralized, it is not subject to the same regulations as a traditional platform. This provides more freedom and flexibility for both the seller and buyer.

Categories:

Contact Us

To find out more about Abto Software expertise, request a quote or get a demo of your custom solution.

Contact us

Tell your idea, request a quote or ask us a question