Exevo Pan is an official Tibia supported fansite focused on improving your Char Bazaar experience.
This monorepo contains the entire codebase of our project. Here is the anatomy:
โโโ automations
โโโ apps
โย ย โโโ bazaar-scraper
โย ย โโโ blog-worker
โย ย โโโ current-auctions-lambda
โย ย โโโ exevo-pan
โย ย โโโ history-server
โโโ packages
โย ย โโโ auction-queries
โย ย โโโ config
โย ย โโโ data-dictionary
โย ย โโโ logging
โย ย โโโ mock-maker
โย ย โโโ shared-utils
โย ย โโโ tsconfig
โย ย โโโ @types
โโโ package.json
The entire stack is built using typescript
, so you will need Node.js
and yarn
. If you are starting from a fresh clone of this repository, start with:
yarn
This will install and build all the apps
dependencies. You will also need to install Workers CLI:
yarn global add @cloudflare/wrangler
and Serverless Framework CLI:
yarn global add serverless
- exevo-pan: the frontend application, built with
React
- bazaar-scraper: a custom built tool for scraping Char Bazaar data from the official Tibia website
- current-auctions-lambda: a AWS Lambda that serves current auctions data
- history-server: an
Express
webserver responsible for serving past auctions data - blog-worker: a Cloudflare Worker that queries blog posts
It's advisible that you read every app documentation before trying to run the full stack. Still, here is a simple recipe for you to get started:
yarn && yarn build:packages
At the apps/bazaar-scraper
directory, run:
yarn scrap:auctions
to get current auctions data. Then, fetch for highlighted auctions:
yarn update:highlighted
To get some history auction data, start with:
yarn scrap:history
Scraping the entire History data will take several days, but you can skip this process as soon as HistoryAuctions.jsonl
has been outputted.
Now generate some history statistics data using:
yarn update:statistics
At this point, your apps/bazaar-scraper/Output
directory should have this set of data:
โโโ CurrentAuctions.json
โโโ HighlightedAuctions.json
โโโ HistoryAuctions.jsonl
โโโ HistoryStatistics.json
โโโ ItemsData.json
โโโ ScrapHistoryData.json
โโโ ServerData.json
Now you are ready to have a minimal dev environment! Go back to the repository root directory and run:
yarn dev
Now you are ready to roll! Apps will be running on:
- exevo-pan: http://localhost:3000
- current-auctions-lambda: http://localhost:8787
- history-server: http://localhost:4000
- static-data-server: http://localhost:5555
- blog-worker: http://localhost:3132
- static-blog-data-server: http://localhost:4444
This software is 100% free, open-source and unlicensed.
You can find more info about me or this project here ๐
Contact: [email protected]