Skip to content

emilioziniades/flatland

Repository files navigation

Flatland🎨

A dapp (distributed application) built on the Ethereum blockchain. Collaborative pixel art using the ERC721 Non-Fungible Token standard. You can find more information in the explainer.

Demo

Here is a working live demo.

For testing purposes, earlier versions of Flatland will be deployed to the Ropsten Test Network. To use the app, you'll need a Metamask wallet and some test Ether from a faucet. Yay, free money!

File structure

.
|–– README.md
|–– truffle-config.js
|–– package.json
|–– app
    |–– gatsby-config.js
    |–– package.json
    |–– static
    |–– src
        |–– components
        |–– content
        |–– images
        |–– pages
        |–– utils
        |–– static
|–– build
    |–– contracts
      |–– Flatland.json
|–– contracts
    |–– Flatland.sol
|–– migrations
|–– test
    |–– Flatland.test.js

Contributing

If you want to run a local version of this app on your computer, follow the steps below.

First, clone the repo

git clone https://github.com/emilioziniades/flatland

Change to the flatland directory and install the dependencies in /flatland/ and /flatland/app

cd flatland && npm install

cd app && npm install

Remain in the app directory, and start the local development server

gatsby develop

Now, you should be able to visit https://localhost:8000 in your browser and see a local instance of Flatland. Gatsby features hot reloading, so you can just make changes in the flatland/app/ directory and view the changes live.

Go ahead and have a look at the open issues and assign one to yourself. Now that you have cloned the repo, try to fix the bug / implement the functionality.

NB The app should succesfully build. Run gatsby build. If there are no errors, commit your changes. Create a pull request and link it to the issue that your pull request addresses.

Built with

  • Gatsby - Static site generator written in JavaScript, and built using the React framework.

  • React - Component based javascript framework. Includes support for state management. This project makes use of ES6 syntax, function components, and hooks

  • React Bootstrap - A combination of React and Bootstrap, both front-end frameworks.

  • Ethers - Javascript library used to interact with Ethereum blockchain.

  • Truffle Suite - Smart contract test, build and deploy suite.

  • Ganache-CLI - Local blockchain for testing purposes.

  • Solidity - Smart contract programming language, compiles to the Ethereum Virtual Machine (EVM). Crypto Zombies is a good starting point for learning solidity.

Bug / Feature Request

If you find a bug, kindly open an issue here by including your search query and the expected result.

If you'd like to request a new feature, feel free to do so by opening an issue here.

About

Collaborative pixel art on the Ethereum blockchain.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published