All Projects → vercel → Next Stats Action

vercel / Next Stats Action

GitHub action for generating stats for Next.js pull requests

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Next Stats Action

Monocle
Detect anomalies in your GitHub/Gerrit projects
Stars: ✭ 50 (-26.47%)
Mutual labels:  stats
Gpuview
A lightweight web dashboard for monitoring GPU usage
Stars: ✭ 57 (-16.18%)
Mutual labels:  stats
Denobrazil.com
🇧🇷 Site oficial do Deno Brasil
Stars: ✭ 61 (-10.29%)
Mutual labels:  nextjs
Nextjs Hn
A Hacker News Progressive Web App built using Next.js
Stars: ✭ 53 (-22.06%)
Mutual labels:  nextjs
Next Pkg
Extended Next.js server with pkg support
Stars: ✭ 55 (-19.12%)
Mutual labels:  nextjs
Theming Demo
https://codesandbox.io/s/github/juliaqiuxy/theming-demo/tree/master/?from-embed
Stars: ✭ 59 (-13.24%)
Mutual labels:  nextjs
Epl Fantasy Geek
English Premier League 2017-18 Fantasy Stats for Geeks
Stars: ✭ 50 (-26.47%)
Mutual labels:  stats
Ruby Statistics
Ruby gem for some statistical operations without any statistical language dependency
Stars: ✭ 67 (-1.47%)
Mutual labels:  stats
Ctfsubmitter
A flag submitter service with distributed attackers for attack/defense CTF games.
Stars: ✭ 56 (-17.65%)
Mutual labels:  stats
Graphql Apollo Next.js
A server-rendering GraphQL client with Apollo Client and Next.js
Stars: ✭ 59 (-13.24%)
Mutual labels:  nextjs
Grommet Nextjs
Build enterprise apps with react and grommet
Stars: ✭ 54 (-20.59%)
Mutual labels:  nextjs
Next Authentication
Authentication & Authorization library for the Next.js framework
Stars: ✭ 55 (-19.12%)
Mutual labels:  nextjs
Twitter Bookmarks Search
WebExtension that adds ability search all your bookmarked tweets!
Stars: ✭ 59 (-13.24%)
Mutual labels:  nextjs
Nextjs Woocommerce
NextJS (React) eCommerce site with WooCommerce backend
Stars: ✭ 53 (-22.06%)
Mutual labels:  nextjs
Nextjs Pkg Docker Alpine
📥Deploy a commercial Next.js application with pkg and docker.
Stars: ✭ 66 (-2.94%)
Mutual labels:  nextjs
Nextjs Material Dashboard
NextJS version of Material Dashboard React
Stars: ✭ 50 (-26.47%)
Mutual labels:  nextjs
Open Source
🎉 A list of GitHub issues to help beginners make their first pull request.
Stars: ✭ 57 (-16.18%)
Mutual labels:  nextjs
Npm Api
Node.js library for getting info from NPM’s API
Stars: ✭ 67 (-1.47%)
Mutual labels:  stats
Next Ts Template
Template for Next.js using parameterized typed routing
Stars: ✭ 67 (-1.47%)
Mutual labels:  nextjs
Next React Graphql Apollo boostrap
React + GraphQL + Next.js project architecture that I play with right now
Stars: ✭ 59 (-13.24%)
Mutual labels:  nextjs

Next.js Stats GitHub Action

Downloads and runs project with provided configs gathering stats to compare branches

See it in action at Next.js https://github.com/zeit/next.js

Getting Started

  1. Add a .stats-app folder to your project with a stats-config.js and any files to run against for example a test app that is to be built
  2. Add the action to your workflow
  3. Enjoy the stats

Stats Config

const StatsConfig = {
  // the Heading to show at the top of stats comments
  commentHeading: 'Stats from current PR' | undefined,
  commentReleaseHeading: 'Stats from current release' | undefined,
  // the command to build your project if not done on post install
  initialBuildCommand: undefined | string,
  skipInitialInstall: undefined | boolean,
  // the command to build the app (app source should be in `.stats-app`)
  appBuildCommand: string,
  appStartCommand: string | undefined,
  // the main branch to compare against (what PRs will be merging into)
  mainBranch: 'canary',
  // the main repository path (relative to https://github.com/)
  mainRepo: 'zeit/next.js',
  // whether to attempt auto merging the main branch into PR before running stats
  autoMergeMain: boolean | undefined,
  // an array of configs for each run
  configs: [
    { // first run's config
      // title of the run
      title: 'fastMode stats',
      // whether to diff the outputted files (default: onOutputChange)
      diff: 'onOutputChange' | false | undefined,
      // config files to add before running diff (if `undefined` uses `configFiles`)
      diffConfigFiles: [] | undefined,
      // renames to apply to make file names deterministic
      renames: [
        {
          srcGlob: 'main-*.js',
          dest: 'main.js'
        }
      ],
      // config files to add before running (removed before successive runs)
      configFiles: [
        {
          path: './next.config.js',
          content: 'module.exports = { fastMode: true }'
        }
      ],
      // an array of file groups to diff/track
      filesToTrack: [
        {
          name: 'Pages',
          globs: [
            'build/pages/**/*.js'
          ]
        }
      ],
      // an array of URLs to fetch while `appStartCommand` is running
      // will be output to fetched-pages/${pathname}.html
      pagesToFetch: [
        'https://localhost:$PORT/page-1'
      ]
    },
    { // second run's config
      title: 'slowMode stats',
      diff: false,
      configFiles: [
        {
          path: './next.config.js',
          content: 'module.exports = { slowMode: true }'
        }
      ],
      filesToTrack: [
        {
          name: 'Main Bundles',
          globs: [
            'build/runtime/webpack-*.js',
            'build/runtime/main-*.js',
          ]
        }
      ]
    },
  ]
}

module.exports = StatsConfig
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].