A Database Of Semantically Searchable Market Definitions
Features •
Infrastructure •
Installation •
Attribution
## Purpose
JurisMercatus is a market definition database aggregated from the European Commission's merger and antitrust case decisions. It brings all the definitions together on one page and uses natural language searches, so your query doesn't need to exactly match the wording in the decisions.
## Features
- A decade of cases
- A database with every market definition from the last 10 years.
- Cross platform
- Works on Windows, macOS and Linux.
- 4000+ market definitions
- 600 unique cases
- 100% Free
- Ready and easy to use
- Complete access to full database and code
- Natural language search
- Live preview
## Live Demo
Try it out in your browser (no sign‑up needed):
[jurismercatus.shriyanyamali.com](https://jurismercatus.shriyanyamali.com)
## Development Process
1. Scrape Cases
2. Extract Sections
3. Extract Individual Market Definitions
4. Embed and Index
5. Search
6. Return Matches
Learn more at [jurismercatus.shriyanyamali.com/how-it-works](https://jurismercatus.shriyanyamali.com/how-it-works).
## Infrastructure
| Frontend |
|
| Data Analysis |
|
| Services |
|
## Installation
### Prerequisites
- [Node.js](https://nodejs.org/)
- [npm](https://www.npmjs.com/) or [Yarn](https://yarnpkg.com/)
### Manual Installation
```bash
# Clone the repository
git clone https://github.com/shriyanyamali/JurisMercatus.git
# Change into the project directory
cd JurisMercatus
# Install dependencies
npm install
# or
yarn install
# Start local development server
npm run dev
# or
yarn dev
```
The app will be available at [http://localhost:3000](http://localhost:3000).
If you are hosting with Vercel, set these as your environment variables or create a `.env` file. The variables should be structured as follows:
```bash
PINECONE_API_KEY=pcsk...
PINECONE_BASE_URL=https://.svc..pinecone.io
PINECONE_ENV= e.g us-east-1-aws
PINECONE_INDEX= eg. jurismercatus
OPENAI_API_KEY=sk...
```
See [`.env.example`](/.env.example) for an example environment.
### Docker Installation
```bash
# Built the image
docker build -t jurismercatus .
# Run the container
docker run -d -p 3000:3000 \
-e PINECONE_API_KEY=pcsk... \
-e PINECONE_BASE_URL=https://.svc..pinecone.io \
-e PINECONE_ENV=us-east-1-aws \
-e PINECONE_INDEX=jurismercatus \
-e OPENAI_API_KEY=sk... \
jurismercatus
```
See [`.env.example`](/.env.example) for an example environment.
> Note: Regardless of the installation method, you will have to provide and embed your own market definitions in Pinecone. If you want to use the JurisMercatus database, you can access it [here](https://jurismercatus.shriyanyamali.com/database.json).
## How to Use
1. Visit the Semantic Search page.
2. Filter by policy area, year, or search.
3. Enter your query.
4. Return the top 20 results based on the search criteria.
## Constituent Repositories
- [Lextract](https://github.com/shriyanyamali/Lextract): Extracts relevant market definitions from European Commission competition case decision PDFs.
- [pinecone-def-search](https://github.com/shriyanyamali/pinecone-def-search): Code to embed text records and create a Pinecone vector index, allowing the semantic search of market definitions.
## Contributing
Contributions are welcome. Please read the [contribution guidelines](CONTRIBUTING.md) first.
## License
The code in this repository is licensed under the AGPL-3.0 License.
View the full license at [www.gnu.org/licenses/agpl-3.0](https://www.gnu.org/licenses/agpl-3.0).
## Attribution
When using the code from this repo (i.e. shriyanyamali/JurisMercatus and jurismercatus.shriyanyamali.com) you must provide proper attribution.
Specifically, in any work, including but not limited to public, published, commercialized, or derived work that uses or builds upon this repository's code, you must cite the original repository by including the following citation:
```
This project uses digital assets from the JurisMercatus repository and
jurismercatus.shriyanyamali.com Copyright (c) 2025 Shriyan Yamali, licensed under
the GNU Affero General Public License v3.0 (AGPL-3.0).
```
Failure to include proper attribution when using JurisMercatus’s code may be considered a violation of the license terms.
## Contact
Email: [yamalishriyan@gmail.com](mailto:yamalishriyan@gmail.com)
Copyright © 2025 Shriyan Yamali. All rights reserved.