A tool to calculate mean and standard deviation from multiple tests using PageSpeed Insights API.

Overview

psi-sample

PSI Test tool is an open source tool to assist web developers that runs Page Speed Insight test manually!

Installing

To install the psi-test tool, run inside the terminal:

cargo install psi-test

If you don't have Cargo package manager for Rust install it. For more information about installation https://doc.rust-lang.org/cargo/getting-started/installation.html

Using PSI-Test Tool

⚠️ get the google page speed insight API token here: https://developers.google.com/speed/docs/insights/v5/get-started#APIKey

Examples of how to run psi-test tool

Default

Using the default number-of-runs that is 20.

psi-test --token=<<your_token>> <<page_url>>

Passing number-of-runs flag

psi-test --token=<<your_token>> --number-of-values=10 <<page_url>>

For more information run:

psi-test --help
You might also like...
Tiny crate that allows to wait for a stop signal across multiple threads

Tiny crate that allows to wait for a stop signal across multiple threads. Helpful mostly in server applications that run indefinitely and need a signal for graceful shutdowns.

Envwoman is an application, to sync your .env-files across multiple machines

Envwoman is an application, to sync your .env-files across multiple machines. The main goal is to make Envwoman secure and trustworthy, so everything is open-source and the data will never in plain-text on the server. Encryption happens client-sided via aes-gcm.

API wrapper for the tankerkönig api

tankerkoenig-rs API wrapper for the tankerkoenig-api written in rust. Gives you ready deserialized structs and a easy to use and strictly typed api. I

A repository full of manually generated hand curated JSON files, which contain the API Types that the Discord API returns.

Discord API Types A repository full of manually generated hand curated JSON files, which contain the API Types that the Discord API returns. Also did

Blazingly fast spam classification API built using Rocket Web Framework.

Telegram Antispam API Blazingly fast spam classification API built using Rocket Web Framework. Notes The classifier works in aggressive mode, it can s

A tool using binrw to read FFXIV data files

last-legend-dob A tool using binrw to read FFXIV data files. Mainly made to harvest the music from the game files for personal consumption, since it t

A library to access BGPKIT Broker API and enable searching for BGP data archive files over time from public available data sources.
A library to access BGPKIT Broker API and enable searching for BGP data archive files over time from public available data sources.

BGPKIT Broker BGPKIT Broker is a online data API service that allows users to search for publicly available BGP archive files by time, collector, proj

🚀 Fast and 100% API compatible postcss replacer, built in Rust

🚀 Fast and 100% API compatible postcss replacer, built in Rust

A high-level Rust crate around the Discord API, aimed to be easy and straight-forward to use.
A high-level Rust crate around the Discord API, aimed to be easy and straight-forward to use.

rs-cord A high-level Rust crate around the Discord API, aimed to be easy and straight-forward to use. Documentation • Crates.io • Discord Navigation M

Comments
  • feat: Add strategy flag to handle PSI strategy parameter

    feat: Add strategy flag to handle PSI strategy parameter

    The PSI Test CLI now handles PSI Strategy parameter ("mobile", "desktop") with the default value "mobile". For more info: https://developers.google.com/speed/docs/insights/v5/reference/pagespeedapi/runpagespeed#response

    opened by igorbrasileiro 0
  • feat: Batch tests, median, confidence interval, workflow

    feat: Batch tests, median, confidence interval, workflow

    This PR adds multiple things:

    • Batch tests via -B flag
    • median
    • confidence interval with 95%
    • release workflow
    • Refactor into modules

    ⚠️ This PR drops first contentful paint 3g metric on mobile strategy

    opened by igorbrasileiro 0
  • Add google psi link at token flag description

    Add google psi link at token flag description

    Add this LINK: https://developers.google.com/speed/docs/insights/v5/get-started#APIKey at token description here: https://github.com/igorbrasileiro/psi-sample-test/blob/main/src/main.rs#L315

    bug enhancement good first issue 
    opened by igorbrasileiro 0
  • Add PageSpeed Insight query parameters as flag

    Add PageSpeed Insight query parameters as flag

    Today, is not possible to customize the PSI test with query parameters and also, the test strategy query parameter has a hardcoded value mobile. The objective of this issue is allow to add query parameters following the PSI API documentation.

    https://developers.google.com/speed/docs/insights/v5/reference/pagespeedapi/runpagespeed#parameters

    enhancement good first issue 
    opened by igorbrasileiro 0
Releases(v0.3.0)
  • v0.3.0(Oct 12, 2022)

    What's Changed

    • feat: Batch tests, median, confidence interval, workflow by @igorbrasileiro in https://github.com/igorbrasileiro/psi-sample-test/pull/9
    • feat: Add strategy flag to handle PSI strategy parameter by @igorbrasileiro in https://github.com/igorbrasileiro/psi-sample-test/pull/11

    Full Changelog: https://github.com/igorbrasileiro/psi-sample-test/compare/v0.1.3...v0.3.0

    Source code(tar.gz)
    Source code(zip)
Owner
Igor Brasileiro
Brazilian Software Engineer at @vtex. Bachelor in computer science at Universidade Federal de Campina Grande.
Igor Brasileiro
This is a Discord bot written in Rust to translate to and from the Bottom Encoding Standard using bottom-rs and Serenity.

bottom-bot This is a Discord bot written in Rust to translate to and from the Bottom Encoding Standard using bottom-rs and Serenity. Ever had this pro

Bottom Software Foundation 11 Dec 10, 2022
CLI tool that make it easier to perform multiple lighthouse runs towards a single target and output the result in a "plotable" format.

Lighthouse Groupie CLI tool that make it easier to perform multiple lighthouse runs towards a single target and output the result in a "plotable" form

Polestar 1 Jan 12, 2022
Modrinth API is a simple library for using, you guessed it, the Modrinth API in Rust projects

Modrinth API is a simple library for using, you guessed it, the Modrinth API in Rust projects. It uses reqwest as its HTTP(S) client and deserialises responses to typed structs using serde.

null 21 Jan 1, 2023
Paru is your standard pacman wrapping AUR helper with lots of features and minimal interaction.

Paru Feature packed AUR helper Description Paru is your standard pacman wrapping AUR helper with lots of features and minimal interaction. Installatio

Lulu 4k Jan 9, 2023
A rust library for interacting with multiple Discord.com-compatible APIs and Gateways at the same time.

Chorus A rust library for interacting with (multiple) Spacebar-compatible APIs and Gateways (at the same time). Explore the docs » Report Bug · Reques

polyphony 4 Apr 30, 2023
An example of Brainf*** JIT-compiler with only the standard library.

jit-compiler An example of Brainf*** JIT-compiler with only the standard library. Prerequisite Rust(1.56.0-nightly or later, but it must work kind of

Akihito KIRISAKI 18 Jan 22, 2022
Sway-lib-core - Sway standard library core primitives.

lib-core This Sway project contains core operators and extremely primitive logic for use in the standard library of the Sway programming language. Usa

Fuel Labs 8 Mar 29, 2022
A standard for fungible tokens on Move.

Move Program Kit (MPK) The Move Program Kit (MPK) is a collection of software written in the Move programming language for the Aptos blockchain. Modul

Menlo Labs 6 Jul 25, 2022
basic multiple package manager

baka basic multiple package manager Docs Env baka_root_setting Windows: %USERPROFILE%/.baka/config Linux, Mac: $HOME/.baka/config baka_plugins (Just u

null 8 Dec 29, 2021
A thread pool for running multiple tasks on a configurable group of threads.

Threadfin A thread pool for running multiple tasks on a configurable group of threads. Extra features: Dynamic pool size based on load Support for asy

Stephen M. Coakley 46 Dec 5, 2022