The CoinRank API is a powerful tool that allows users to rate and evaluate cryptocurrencies using the familiar "upvote" and "downvote" system.
Project developed as part of a talent selection/recruitment process for Klever.
Spin up your own instance of the CoinRank API using Vercel and Railway with just two clicks.
The API's request/response structure and the available endpoints are fully documented using the OpenAPI specification. You can explore it here or by following the link bellow.
The back-end is written in Go, uses Gin as its HTTP framework and is fully CORS compliant thanks to Gin's CORS middleware. The API's endpoints and methods are tested using Testify. The database chosen was MongoDB beacause of its ease of use, pricing and performance.
The front-end is written in Typescript and uses React, Next.js and SWR under the hood to increase performance, accessibility and maintainability. The styles and animations are made with Mantine and Framer Motion. All the icons were provided by Font Awesome through React Icons.
- Clone the repository running
git clone https://github.com/peterfritz/coinrank.git
,git clone [email protected]:peterfritz/coinrank.git
orgh repo clone peterfritz/coinrank
depending on your setup. - Open the directory cloned running
cd coinrank
. - Run the database, the back-end, and the front-end using
docker-compose up -d
. - Open a new tab on your browser and navigate to
http://localhost:80/
. If everything worked you should be able to see the application running.
Note
The front-end uses the port 80 and the back-end uses the port 8080.