Skip to content

Ethereum Marketplace built with Truffle for interacting with smart contracts and deploying them. Plus, Moralis for interacting with web3 on the react dapp. This project can be cloned and be used as a base to create an nft-marketplace or any DAPP with EVM-compatible blockchain such as Polygon, Avalanche, Binance Smart Chain and other such chains

License

Notifications You must be signed in to change notification settings

ChrisJustice600/NFT_marketplace

Repository files navigation

NFT Marketplace πŸš€

Welcome to the NFT Marketplace repository! This project is an Ethereum marketplace built with Truffle for interacting with smart contracts and deploying them. It also uses Moralis for seamless interaction with web3 on the React DApp. This repository serves as a foundation for creating your own NFT marketplace or any DApp on EVM-compatible blockchains like Polygon, Avalanche, and Binance Smart Chain.

Check out the latest releases here!

Table of Contents

Features 🌟

  • Smart Contract Integration: Easily deploy and interact with Ethereum smart contracts.
  • Web3 Interaction: Use Moralis for efficient web3 functionality.
  • Responsive Design: Built with Tailwind CSS for a clean and modern user interface.
  • Multi-Chain Support: Compatible with various EVM chains.
  • DApp Functionality: Complete features for an NFT marketplace including minting, buying, and selling NFTs.

Technologies Used πŸ› οΈ

  • JavaScript: Core programming language for the project.
  • React: Frontend library for building user interfaces.
  • Solidity: Language for writing smart contracts.
  • Truffle: Development framework for Ethereum.
  • Moralis: Backend service for web3 applications.
  • Tailwind CSS: Utility-first CSS framework for styling.
  • Web3.js: Library for interacting with the Ethereum blockchain.

Getting Started 🚦

To get started with the NFT Marketplace, follow these steps:

  1. Clone the Repository:

    git clone https://github.com/ChrisJustice600/NFT_marketplace.git
    cd NFT_marketplace
  2. Install Dependencies: Make sure you have Node.js installed. Then run:

    npm install
  3. Configure Environment Variables: Create a .env file in the root directory and add your Moralis API key and other necessary configurations.

  4. Compile Smart Contracts: Run the following command to compile the smart contracts:

    truffle compile
  5. Migrate Smart Contracts: Deploy the smart contracts to your desired network:

    truffle migrate --network <network_name>
  6. Run the Application: Start the React application with:

    npm start

Your application should now be running on http://localhost:3000.

Project Structure πŸ“

The project is organized as follows:

NFT_marketplace/
β”œβ”€β”€ contracts/          # Smart contracts
β”œβ”€β”€ migrations/         # Migration scripts
β”œβ”€β”€ src/               # React application source code
β”‚   β”œβ”€β”€ components/     # React components
β”‚   β”œβ”€β”€ pages/          # Application pages
β”‚   β”œβ”€β”€ styles/         # Tailwind CSS styles
β”‚   └── App.js          # Main application file
β”œβ”€β”€ .env                # Environment variables
β”œβ”€β”€ truffle-config.js   # Truffle configuration
└── package.json        # Project metadata and dependencies

Deployment 🌐

To deploy the application to a live environment, follow these steps:

  1. Build the React Application: Create a production build of your application:

    npm run build
  2. Choose a Hosting Service: You can host your DApp on platforms like Vercel, Netlify, or GitHub Pages.

  3. Upload the Build: Follow the instructions of your chosen hosting service to upload the contents of the build directory.

  4. Configure Domain: If you want a custom domain, configure it through your hosting provider.

Usage πŸ›’

Once the application is running, users can:

  • Mint NFTs: Create new NFTs by uploading digital assets.
  • Buy NFTs: Browse and purchase available NFTs in the marketplace.
  • Sell NFTs: List owned NFTs for sale.

Users will need a web3 wallet like MetaMask to interact with the marketplace.

Contributing 🀝

We welcome contributions! If you would like to contribute to the NFT Marketplace, please follow these steps:

  1. Fork the Repository.
  2. Create a New Branch:
    git checkout -b feature/YourFeature
  3. Make Your Changes.
  4. Commit Your Changes:
    git commit -m "Add your message"
  5. Push to the Branch:
    git push origin feature/YourFeature
  6. Open a Pull Request.

Your contributions will help improve the project and benefit the community.

License πŸ“œ

This project is licensed under the MIT License. See the LICENSE file for details.

For the latest updates, please check the Releases section.


Thank you for visiting the NFT Marketplace repository! We hope you find it useful for your projects. If you have any questions or feedback, feel free to reach out. Happy coding!

About

Ethereum Marketplace built with Truffle for interacting with smart contracts and deploying them. Plus, Moralis for interacting with web3 on the react dapp. This project can be cloned and be used as a base to create an nft-marketplace or any DAPP with EVM-compatible blockchain such as Polygon, Avalanche, Binance Smart Chain and other such chains

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published