Skip to content

Commit b358f6a

Browse files
authored
Merge pull request #737 from ElrondNetwork/danielailie-patch-1
Update readme first draft
2 parents 73e2cad + a10b7e8 commit b358f6a

File tree

1 file changed

+45
-21
lines changed

1 file changed

+45
-21
lines changed

README.md

Lines changed: 45 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,60 @@
1-
## Description
1+
GraphQl service to provide informations regarding nfts and auctions on Elrond Blockchain
22

3+
## Dependencies
34

4-
## Installation
5+
1. Node.js > @16.x.x is required to be installed [docs](https://nodejs.org/en/)
6+
1. Redis Server is required to be installed [docs](https://redis.io/).
7+
2. MySQL Server is required to be installed [docs](https://dev.mysql.com/doc/refman/8.0/en/installing.html).
8+
3. MongoDB Server is required to be installed [docs](https://www.mongodb.com/docs/manual/installation).
59

6-
```bash
7-
$ npm install
8-
```
10+
You can use `docker-compose up` in a separate terminal to use a local docker container for all these dependencies.
911

10-
## Running the app
12+
After running the sample, you can stop the Docker container with `docker-compose down`
1113

12-
```bash
13-
# development
14-
$ npm run start
14+
## Available Scripts
1515

16-
# watch mode
17-
$ npm run start:dev
16+
This is an Elrond project built on Nest.js framework.
1817

19-
# production mode
20-
$ npm run start:prod
21-
```
18+
### `npm run start:prod`
19+
20+
Runs the app in the production mode.
21+
Make requests to [http://localhost:3005/graphql](http://localhost:3005/graphql).
2222

23-
## Test
23+
## Running the app
2424

2525
```bash
26-
# unit tests
27-
$ npm run test
26+
# development debug mode
27+
$ npm run start:debug
2828

29-
# e2e tests
30-
$ npm run test:e2e
29+
# development mode
30+
$ npm run start:dev
3131

32-
# test coverage
33-
$ npm run test:cov
32+
# production mode
33+
$ npm run start:prod
3434
```
3535

36+
It depends on the following external systems:
37+
- gateway:
38+
- interaction with the indexed marketplace
39+
- docs: [https://docs.elrond.com/sdk-and-tools/proxy/](https://docs.elrond.com/sdk-and-tools/proxy/)
40+
- index:
41+
- to gather information regarding nft history
42+
- docs: [https://docs.elrond.com/sdk-and-tools/elastic-search/](https://docs.elrond.com/sdk-and-tools/elastic-search/)
43+
- api:
44+
- to get information regarding nfts and collections
45+
- docs: [https://docs.elrond.com/sdk-and-tools/rest-api/api-elrond-com](https://docs.elrond.com/sdk-and-tools/rest-api/api-elrond-com)
46+
47+
It uses on the following internal systems:
48+
- redis: used to cache various data, for performance purposes
49+
- rabbitmq: pub/sub for sending mainly NFT process information
50+
51+
It depends on the following optional external systems:
52+
- events notifier rabbitmq: queue that pushes logs & events which are handled internally e.g. to trigger auctions indexing
53+
- data: provides eGLD price information for transactions
54+
- ipfs: ipfs gateway for uploading nft media and metadata
55+
- AWS S3: used to upload nft media for faster performance
56+
57+
It uses the following optional internal systems:
58+
- mysql database: used to store mainly auction information
59+
- mongo database: used to store mainly NFT traits information
3660

0 commit comments

Comments
 (0)