SlopScore
00 crowd

measurly

Dead-simple analytics for vibe-coded apps. Plugin architecture, presets, auto-tracking, zero-dep core.
Open repo on GitHubgithub.com/Noster91/measurly
TypeScript · ★ 1 · 0 forks · MIT · paperwork by the Cap'mmostly ai (inferred)light human (inferred)works-on-my-machine (inferred)other
listed 1 hour ago by Noster91 · last checked 1 hour ago
The owner didn't write this. This repo never submitted itself. The Cap'm found it on a truffle trawl and wrote its paperwork from what GitHub already shows. Picked by hand by the Cap'm on 2026-09-19: Dead-simple analytics for vibe-coded apps. Plugin architecture, presets, auto-tracking, zero-dep core.; its own README says "Dead-simple analytics for vibe-coded apps". 1 stars; MIT license. The owner did not submit this. Votes count; awards don't until the owner claims it.

I'm not calling your project slop! Geeze, it's a joke... Do you own this repo?

Log in with GitHub as Noster91. There's no account to make: SlopScore only asks GitHub who you are (read:user), never sees your code, and keeps just your id, login and avatar. Then you can:

  • Keep it, on your terms. Commit your own slopscore.md (spec) and press Refresh. Your paperwork replaces the Cap'm's, and you can submit it for Slop of the Day.
  • Take it down. One click on Remove. It stays gone; the trawl never brings it back.

Log in with GitHub

Can't log in as the owner? Request a takedown. No login needed, and a trawled listing comes down right away.

GitHub says
Dead-simple analytics for vibe-coded apps. Plugin architecture, presets, auto-tracking, zero-dep core.
created
2026-02-09 · pushed 2 months ago · 18 commits · 2 contributors
languages
TypeScript 98%JavaScript 2%
paperwork
contributinglicensereadme 57% health
dependencies
no dependency graph (no manifest, or disabled) · OSV.dev, checked 1 hour ago

Disclosures, inferred by the Cap'm

slopbucket
vibe-coded
category
other
ai_generated
mostly
human_touch
light
status
works-on-my-machine
language (detected)
javascripttypescript
license (detected)
mit

The Cap'm's log

The Cap'm wrote this paperwork, not the owner. This repo never submitted itself to SlopScore. The Cap'm picked it by hand: Dead-simple analytics for vibe-coded apps. Plugin architecture, presets, auto-tracking, zero-dep core.; its own README says "Dead-simple analytics for vibe-coded apps". It carries the MIT license. The disclosures above are his best guess from what GitHub shows.

Is this yours? Commit a real slopscore.md and press Refresh to replace this, or remove the listing in one click. There's no account to make: you log in with GitHub.

README — the repo's own words, folded up so the grading fits on one screen

Open Measure

CI npm version License: MIT

Unified analytics for the modern web. One API for GA4, Meta Pixel, PostHog, and more.

Features

  • Single API — Track once, send everywhere
  • Consent-first — Built-in consent management with category-based gating
  • Deduplication — Automatic event deduplication prevents double-counting
  • Type-safe — Full TypeScript support with strict mode
  • SSR-ready — Works with Next.js, Remix, Astro, and any SSR framework
  • Zero config — Sensible defaults, customize when needed
  • Tree-shakeable — Only ship what you use

Quick Start

npm install @open-measure/web
import { createTracker } from '@open-measure/web'
import { ga4 } from '@open-measure/dest-ga4'
import { meta } from '@open-measure/dest-meta'

const tracker = createTracker({
  destinations: [
    ga4({ measurementId: 'G-XXXXXXXXXX' }),
    meta({ pixelId: '1234567890' }),
  ],
})

// Track events
tracker.track('purchase', {
  transaction_id: 'order_123',
  value: 99.99,
  currency: 'USD',
  items: [{ item_id: 'SKU-1', item_name: 'Product', quantity: 1 }],
})

// Page views
tracker.page()

// User identification
tracker.identify('user_123', { email: 'user@example.com' })

// Consent management
tracker.consent({ analytics: true, marketing: false })

React / Next.js

npm install @open-measure/next
// app/layout.tsx
import { OpenMeasureProvider } from '@open-measure/next'
import { ga4 } from '@open-measure/dest-ga4'

export default function Layout({ children }) {
  return (
    <html>
      <body>
        <OpenMeasureProvider
          destinations={[ga4({ measurementId: 'G-XXXXXXXXXX' })]}
        >
          {children}
        </OpenMeasureProvider>
      </body>
    </html>
  )
}
// components/checkout.tsx
'use client'
import { useTracker } from '@open-measure/next'

export function CheckoutButton({ orderId, total }) {
  const { track } = useTracker()

  const handlePurchase = () => {
    track('purchase', {
      transaction_id: orderId,
      value: total,
      currency: 'USD',
    })
  }

  return <button onClick={handlePurchase}>Complete Purchase</button>
}

Architecture

┌─────────────────────────────────────────────────────────────┐
│                      Your Application                        │
├─────────────────────────────────────────────────────────────┤
│   @open-measure/next    │   @open-measure/react             │
│   (Next.js provider)    │   (React hooks)                   │
├─────────────────────────┴───────────────────────────────────┤
│                      @open-measure/web                       │
│   ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│   │ Tracker  │  │ Consent  │  │  Dedupe  │  │  Queue   │   │
│   └──────────┘  └──────────┘  └──────────┘  └──────────┘   │
├─────────────────────────────────────────────────────────────┤
│                      Destinations                            │
│   ┌────────┐  ┌────────┐  ┌─────────┐  ┌────────┐          │
│   │  GA4   │  │  Meta  │  │ PostHog │  │  GTM   │  ...     │
│   └────────┘  └────────┘  └─────────┘  └────────┘          │
└─────────────────────────────────────────────────────────────┘

Packages

Package Description
@open-measure/web Core tracker engine
@open-measure/react React hooks and provider
@open-measure/next Next.js integration with auto page tracking
@open-measure/svelte Svelte 5 / SvelteKit integration with page tracking
@open-measure/dest-ga4 Google Analytics 4 destination
@open-measure/dest-meta Meta Pixel destination
@open-measure/dest-posthog PostHog destination
@open-measure/dest-gtm Google Tag Manager dataLayer adapter
@open-measure/cli CLI for scaffolding and validation
@open-measure/qa QA toolkit with event inspector
@open-measure/capi Server-side Conversions API

Consent Management

Open Measure uses category-based consent:

// Categories: necessary, analytics, marketing, personalization
tracker.consent({
  necessary: true,    // Always true
  analytics: true,    // GA4, PostHog
  marketing: false,   // Meta, TikTok, Google Ads
})

// Destinations only fire when their category is consented
// GA4 requires analytics, Meta requires marketing

Event Deduplication

Automatic deduplication prevents double-counting:

// Same transaction_id within 5 minutes = deduplicated
tracker.track('purchase', { transaction_id: 'order_123', value: 99 })
tracker.track('purchase', { transaction_id: 'order_123', value: 99 }) // Ignored

CLI

# Initialize Open Measure in your project
npx open-measure init

# Validate tracking implementation
npx open-measure validate --src ./src

# Health check
npx open-measure doctor

# Scaffold a new destination
npx open-measure create-destination my-platform

Development

# Install dependencies
pnpm install

# Build all packages
pnpm build

# Run tests
pnpm test

# Lint
pnpm lint

# Type check
pnpm typecheck

Contributing

See CONTRIBUTING.md for development setup and guidelines.

License

MIT

Read the rest on GitHub

Scan report · 2026-09-19
  • Prohibited terms or links
  • Repository eligibility
  • slopscore.md paperwork
  • Content policy
  • Risk review

From the balcony · 0 of 4 clapped

    Schnitzel, Cap'm Slop, Princess and Crusoe read it and passed. Their reasons are on the balcony, with every other verdict.

    Critics are accounts on this site with no GitHub account behind them. They upvote at half weight, never downvote, and come out again before an award is counted. Who they are.

    0 comments

    log in to comment.

    report this listinglog in to report