Skip to content

Tumbula is an online marketplace that operates on the blockchain. There are a list of stores on a central marketplace where shoppers can purchase goods posted by the store owners.

License

Notifications You must be signed in to change notification settings

KapsonLabs/tumbula

Repository files navigation

Tumbula Store

Tumbula Store is an online marketplace that operates on the blockchain. There are a list of stores on a central marketplace where shoppers can purchase goods posted by the store owners.

High Level Architecture Diagram

Image of HighlevelArchitecture

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. Run to compile the contract. Ensure you have a local copy of a development blockchain e.g ganache running in the background for local testing.

truffle compile

Then

truffle migrate --network development

Prerequisites

You need to have ganache cli or ganache app which comes in the truffle suite, and npm installed,

You can run ganache-cli in the terminal or open the ganache app

ganache-cli

Copy the generated Mnemonic

Paste the mnemonic in Metamask to import the local accounts running on Ganache. Ensure metamask is listening on localhost.

Installing

You can install project dependencies from the root directory

npm install

To run the application frontend,

cd client
npm install
npm run start

Running the tests

You run tests on the root directory using truffle

Break down into end to end tests

These tests the smart contracts methods

truffle test

Deployment

The smart contract is deployed to the rinkeby testnet. The frontend application is hosted on a personal VPS.

  • Etherscan - Checkout the trasactions on etherscan by appending your address from Metamask to the link provided
  • React FrontEnd - Live front app

Built With

  • Truffle - Javascript suite for efficient smart contract development.
  • Mythx - Security analysis tool for smart contract development
  • Metamask - For the browser interaction, this is a chrome extension.
  • React - The Frontend framework used
  • Django - Backend framework used to build the API.

Authors

License

This project is licensed under the GNU Public License - see the LICENSE file for details

Acknowledgments

  • Consensys Academy - For providing well curated content that helped me gain greater blockchain understanding.
  • African Blockchain Allaince - For providing community support and sponsorship for the course.
  • Cryptosavannah - For the logistics and support.
  • My mentor @joshorig - For the endless support and guidance during the development of this project.

About

Tumbula is an online marketplace that operates on the blockchain. There are a list of stores on a central marketplace where shoppers can purchase goods posted by the store owners.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published