wikipedia-game-solver/README.md

76 lines
1.8 KiB
Markdown
Raw Permalink Normal View History

2024-07-24 12:35:33 +02:00
# Wikipedia Game Solver
> \[!IMPORTANT\]
> This project is a work in progress, at an early stage of development.
## About
The Wikipedia Game involves players competing to navigate from one [Wikipedia](https://en.wikipedia.org/) page to another using only internal links.
[**Wikipedia Game Solver**](https://wikipedia-game-solver.theoludwig.fr) is a tool that helps you find the shortest path between two Wikipedia pages, using only internal links, basically solving the Wikipedia Game for you.
Available online: <https://wikipedia-game-solver.theoludwig.fr>
> \[!NOTE\]
> The project is also a way to learn and experiment with a monorepo architecture, with [Turborepo](https://turbo.build/repo), and [TypeScript](https://www.typescriptlang.org/) as the main language.
>
> The project setup **can be used as a template/boilerplate for new projects**.
## Getting Started
### Prerequisites
- [Node.js](https://nodejs.org/) >= 22.0.0
- [pnpm](https://pnpm.io/) >= 9.5.0
### Installation
```sh
# Go to the project root
cd wikipedia-game-solver
# Configure environment variables
cp .env.example .env
cp apps/website/.env.example apps/website/.env
# Install dependencies
pnpm install --frozen-lockfile
# Install Playwright browser binaries and their dependencies (tests)
pnpm exec playwright install --with-deps
```
### Development
```sh
# Start the development server
node --run dev
# Lint
node --run lint:editorconfig
node --run lint:prettier
node --run lint:eslint
node --run lint:typescript
# Tests
node --run test
# Build
node --run build
```
### Production environment with [Docker](https://www.docker.com/)
```sh
# Setup and run all the services for you
docker compose up --build
```
#### Services started
`wikipedia-game-solver`: <http://127.0.0.1:5000>
## License
[MIT](./LICENSE)