npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@growsober/types

v1.0.2

Published

Auto-generated TypeScript types from the GrowSober API OpenAPI specification

Readme

@growsober/types

Auto-generated TypeScript types from the GrowSober API OpenAPI specification.

Installation

npm install @growsober/types

Usage

import type { paths, components } from '@growsober/types';

// Access schema types
type User = components['schemas']['UserResponseDto'];
type Event = components['schemas']['EventResponseDto'];
type Hub = components['schemas']['HubResponseDto'];

// Access path types for type-safe API calls
type LoginRequest = paths['/api/v1/auth/login']['post']['requestBody']['content']['application/json'];
type LoginResponse = paths['/api/v1/auth/login']['post']['responses']['200']['content']['application/json'];

Generating Types

Types are auto-generated from the running API's OpenAPI spec:

# From local development API
npm run generate

# From production API
npm run generate:prod

Available Types

Auth Types

  • RegisterDto - Registration request
  • LoginDto - Login request
  • AuthResponseDto - Auth response with tokens
  • RefreshTokenDto - Token refresh request
  • TokenResponseDto - Token response
  • FirebaseAuthDto - Firebase auth request

User Types

  • UserResponseDto - Full user profile
  • UserPublicResponseDto - Public profile
  • CreateUserDto - Create user request
  • UpdateUserDto - Update user request

Hub Types

  • HubResponseDto - Hub details
  • CreateHubDto - Create hub request
  • UpdateHubDto - Update hub request

Event Types

  • EventResponseDto - Event details
  • CreateEventDto - Create event request
  • UpdateEventDto - Update event request

Booking Types

  • BookingResponseDto - Booking details
  • CreateBookingDto - Create booking request

Library Types

  • LibraryContentResponseDto - Content list item
  • LibraryContentDetailResponseDto - Full content
  • LibraryProgressResponseDto - User progress

Business Types

  • BusinessResponseDto - Business details
  • OfferResponseDto - Offer details
  • RedeemOfferDto - Redeem offer request

Subscription Types

  • SubscriptionResponseDto - Subscription details
  • CreateCheckoutDto - Checkout request

Notification Types

  • NotificationResponseDto - Notification details

Type Helpers

For convenience, use with @growsober/sdk which provides type extraction utilities:

import type {
  RequestBody,
  ResponseBody,
  QueryParams,
  PathParams
} from '@growsober/sdk';

// Extract request body type
type CreateEventBody = RequestBody<'/api/v1/events', 'post'>;

// Extract response type
type EventResponse = ResponseBody<'/api/v1/events/{id}', 'get'>;

Development

# Type check
npm run type-check

# Build
npm run build

License

UNLICENSED - Proprietary