Phinxer is a web analytics tool that uses ClickHouse for data storage and analysis.
An alternative to Google Analytics, Plausible, Fathom, Simple Analytics, Matomo and others.
Before you begin, ensure you have the following installed:
- Node.js
- Yarn package manager
- PostgreSQL database
- ClickHouse database
- Clone the repository
- Install dependencies:
yarn
- Copy the
.env.template
file to.env
:cp .env.template .env
- Fill in the required environment variables in the
.env
file:DB_HOST
,DB_NAME
,DB_USERNAME
,DB_PASSWORD
: PostgreSQL database connection detailsCLICKHOUSE_HOST
,CLICKHOUSE_PASSWORD
,CLICKHOUSE_DATABASE
: ClickHouse database connection detailsJWT_SECRET
: A random secret for JWT token generation- Other optional variables for Resend and Stripe integration
To run the project in development mode:
yarn dev
This will start the server on http://localhost:3236
(or the port specified in your .env file).
To run the project in production mode:
Update your .env file:
NODE_ENV=production
- Build the project:
yarn build
- Start the server:
yarn start
If you want to enable email invitations, sign up for a Resend account and add your API key to the RESEND_API_KEY
variable in the .env
file.
Make sure both PostgreSQL and ClickHouse databases are running and accessible before starting the application.