ProductPromotion
Logo

Analytics

made by https://0x3d.site

GitHub - piratepx/app: Just a little analytics insight for your personal or indie project
Just a little analytics insight for your personal or indie project - piratepx/app
Visit Site

GitHub - piratepx/app: Just a little analytics insight for your personal or indie project

GitHub - piratepx/app: Just a little analytics insight for your personal or indie project

๐Ÿดโ€โ˜ ๏ธ piratepx

A simple, privacy-respecting, no cookie, zero JavaScript, 35 byte counter pixel for websites, mobile apps, server-side APIs, CLIs, and just about anywhere else.

Sign up for free at https://www.piratepx.com! piratepx

Overview

This repository contains both the backend and frontend of the app to simplify development and deployment. Other than a few lines of configuration here and there to make this possible, however, they're pretty much separate codebases.

Backend

The backend is a JSON REST API built in Node.js using Fastify and Objection.js. It persists data to a PostgreSQL database.

The source code is located in the api directory, with configuration files in the root of this repository (where this README lives).

Frontend

The frontend is a single-page app built with Vue.js and Tailwind CSS.

The source code is fully isolated in the web directory, which is also where its own configuration files are located.

Development

The following includes the necessary steps to get the full app setup for development, with a focus on backend-specific details. See web/README.md for frontend-specific details.

Prerequisites

Docker Compose is used to run PostgreSQL as configured in compose.yaml. Once installed, simply run:

$ docker compose up

The app itself is not run in a Docker container in development, as it's easy enough to install the necessary version of Node.js with nvm:

$ nvm install

Dependencies

Install dependencies with npm:

$ npm install
$ cd web && npm install

Config

dotenv is used to load environment variables from a .env file into process.env. This file is ignored by version control to prevent committing secrets.

See .env.dist for an example.

Database

Migrations

Knex.js is used to manage database migrations, which are located in api/db/migrations.

To run the latest migrations:

$ npm run knex migrate:latest

Start

Start both the backend and frontend development servers:

$ npm run dev

Code Style & Linting

Prettier is setup to enforce a consistent code style. It's highly recommended to add an integration to your editor that automatically formats on save.

ESLint is setup with the "recommended" rules to enforce a level of code quality. It's also highly recommended to add an integration to your editor that automatically formats on save.

To run via the command line:

$ npm run lint

Releasing

After development is done in the development branch and is ready for release, it should be merged into the main branch, where the latest release code lives. Release It! is then used to interactively orchestrate the release process:

$ npm run release

Articles
to learn more about the analytics concepts.

Resources
which are currently available to browse on.

mail [email protected] to add your project or resources here ๐Ÿ”ฅ.

FAQ's
to know more about the topic..

mail [email protected] to add your project or resources here ๐Ÿ”ฅ.

Queries
or most google FAQ's about Analytics.

mail [email protected] to add more queries here ๐Ÿ”.

More Sites
to check out once you're finished browsing here.

0x3d
https://www.0x3d.site/
0x3d is designed for aggregating information.
NodeJS
https://nodejs.0x3d.site/
NodeJS Online Directory
Cross Platform
https://cross-platform.0x3d.site/
Cross Platform Online Directory
Open Source
https://open-source.0x3d.site/
Open Source Online Directory
Analytics
https://analytics.0x3d.site/
Analytics Online Directory
JavaScript
https://javascript.0x3d.site/
JavaScript Online Directory
GoLang
https://golang.0x3d.site/
GoLang Online Directory
Python
https://python.0x3d.site/
Python Online Directory
Swift
https://swift.0x3d.site/
Swift Online Directory
Rust
https://rust.0x3d.site/
Rust Online Directory
Scala
https://scala.0x3d.site/
Scala Online Directory
Ruby
https://ruby.0x3d.site/
Ruby Online Directory
Clojure
https://clojure.0x3d.site/
Clojure Online Directory
Elixir
https://elixir.0x3d.site/
Elixir Online Directory
Elm
https://elm.0x3d.site/
Elm Online Directory
Lua
https://lua.0x3d.site/
Lua Online Directory
C Programming
https://c-programming.0x3d.site/
C Programming Online Directory
C++ Programming
https://cpp-programming.0x3d.site/
C++ Programming Online Directory
R Programming
https://r-programming.0x3d.site/
R Programming Online Directory
Perl
https://perl.0x3d.site/
Perl Online Directory
Java
https://java.0x3d.site/
Java Online Directory
Kotlin
https://kotlin.0x3d.site/
Kotlin Online Directory
PHP
https://php.0x3d.site/
PHP Online Directory
React JS
https://react.0x3d.site/
React JS Online Directory
Angular
https://angular.0x3d.site/
Angular JS Online Directory