Get the requested page's views or unique visitors from Plausible Analytics
Find a file
Sangelo 7e175c597b
All checks were successful
Build and Push Docker Image / docker-build (push) Successful in 11s
[a] add metrics port export to Dockerfile
2024-10-21 16:13:39 +02:00
.forgejo/workflows [c] set registry and image name statically 2024-10-21 16:00:28 +02:00
.env.example Initial Commit 2024-10-21 15:13:13 +02:00
.gitignore Initial Commit 2024-10-21 15:13:13 +02:00
compose.yml [a] add metrics port export to Dockerfile 2024-10-21 16:13:39 +02:00
Dockerfile [a] add metrics port export to Dockerfile 2024-10-21 16:13:39 +02:00
main.js Initial Commit 2024-10-21 15:13:13 +02:00
package.json Initial Commit 2024-10-21 15:13:13 +02:00
README.md [a] add metrics port export to Dockerfile 2024-10-21 16:13:39 +02:00
yarn.lock Initial Commit 2024-10-21 15:13:13 +02:00

plausible-pageviews-api

Get the requested page's views or unique visitors from Plausible Analytics.

Configuration in .env

PORT=3000 # the api port
METRICS_PORT=9100 # the port on which prometheus metrics are hosted on, endpoint: /metrics
PLAUSIBLE_DOMAIN=plausible.io # the plausible instance domain
PLAUSIBLE_API_KEY="api_key_goes_here" # your plausible API key
ALLOWED_ORIGINS="https://example.com" # allowed CORS origins
RATE_LIMIT_MINUTES=15 # the amount of time in minutes to rate limit
RATE_LIMIT_REQUESTS=100 # amount of max. requests

Don't change the PORT and METRICS_PORT values when running in a Docker Container. Instead, export a different port and forward that to the container's ports 3000 and 3001 for the main API port and the metrics port respectively.

# example for docker-compose.yml:
ports:
  - "5678:3000"
  - "6789:3001"

You also have to mount the .env file inside the container, if you're using Docker:

volumes:
  - .env:/app/.env

Run the API

$ yarn install
$ yarn start