Skip to content

ivaylo-andonov/blockchain-apollo-graphql-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

End-to-end Web Blockchain application powered by http://blockchain.info

Ivaylo Andonov - Coding Challenge

End-to-end Web Blockchain application powered by http://blockchain.info


Technologies used

Front-end : React, Babel, Webpack, Apollo Client

Back-end : Nodejs , Typescript, GraphQL , Apollo Server, Docker, Redis


Pre-requisites

You will need to install the following as pre-requisites to getting started:


Getting Started with Docker

  1. Clone repository from github

Once you have the above installed, run the following command from the root:

docker-compose up -d
  1. when the containers are up -> open browser tab with (http://localhost:3000/)

Run it locally

Start GraphQL API (http://localhost:5000/)

cd backend
yarn install
yarn dev

Start React Client App (http://localhost:3000/)

cd frontend
yarn install
yarn start
Note: for backend part you should have Redis installed locally installation guide or spin up redis container

API component details

An GraphQL API providing blockchain public data powered by https://www.blockchain.com/

Visuals

alt text

Caching strategy

Used 2 layers of caching powered by Redis cache client:

Testing

Built and configured test basis using Jest. Currently, there are two types of tests - unit and functional ones. Could be added more unit and integration tests ( client and server ).


UI component details

Visuals

Blocks feed page alt text

Block details page alt text

Testing

The testing strategy could be created with two types of tests:


Deployment

Nowadays, through project containerization, integration with cloud providers and services such as AWS, GCP, Azure becomes really easy.

For example AWS and Docker have collaborated to make a simplified developer experience that enables you to deploy and manage containers on Amazon ECS directly using Docker tools. You can now build and test your containers locally using Docker Desktop and Docker Compose, and then deploy them to Amazon ECS on Fargate.

More details: here and here

About

End-to-end Web Blockchain application powered by http://blockchain.info

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published