This is a platform that allows users to rent their NFTs to other players. The platform is built using a microservices architecture, with each service running in its own Docker container. The services include:
API
: This is the backend API service that handles all the business logic.EVENT WORKER
: This service listens for events on the blockchain and updates the application's database accordingly.FRONT-END
: This is the frontend service that provides the user interface for the platform.SMART CONTRACTS
: We have the Marketplace Smart Contract and a ERC-721 NFT Smart Contract.
The NFTRentMarketplace is a robust and efficient platform for NFT rentals, built with a variety of technologies to ensure a seamless user experience. Here's a brief overview of what we have used to built the system:
- Lambda AWS + Api Gateway
- Elastic Container Service AWS
- AWS S3
- Oasys Blockchain
Here you can find comprehensive documentation detailing the functionality and usage of the NFTRentMarketplace API.
To test the NFTRentMarketplace, follow these steps:
- Ensure you have Node.js v18 installed. If you're using nvm, you can switch to v18 with the following command:
nvm use 18
- Navigate to each service's directory and install the necessary dependencies:
cd ./api
npm install
cd ../client
npm install
cd ../workers
npm install
-
Copy the provided
.env.example
files to.env
in each service's directory. -
Publish the contracts on Oasys Blockchain
-
Start the services using Docker Compose:
docker-compose up
-
Navigate to localhost:3000 in your web browser.
-
From here, you can add your items to a pool.
-
Switch to a different MetaMask account and rent an item from the pool.
Enjoy testing the NFTRentMarketplace!
0x7DEb7d43389Ec47ce00fa6d6293906faC756491f
0x66Dd2308c4Ce5d75Dc27dc550912266bcb2Ec951