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

gosetup

v0.1.1

Published

TUI for scaffolding Go backend projects

Readme

GoSetup

A modern Terminal UI (TUI) for scaffolding Go backend projects with a complete, production-ready structure.

Features

Interactive CLI Experience - Beautiful TUI built with OpenTUI and React
📁 Complete Project Structure - Pre-configured directories and files for professional Go projects
🗄️ Database Ready - Includes PostgreSQL migrations and schemas
🐳 Docker Support - Docker and docker-compose configurations included
🔄 Go Modules - Automatic go.mod initialization and dependency management
📍 Current Directory Support - Scaffold into existing directory with . as project name

Installation

Using npm (Global)

npm install -g gosetup
gosetup

Using Bun (Global)

bun add -g gosetup
gosetup

Usage

Run the command in your terminal:

gosetup

Interactive Setup

  1. Press Enter at the welcome screen
  2. Enter your GitHub username
  3. Enter your project name (or . to scaffold in current directory)
  4. Wait for the project to be created
  5. Navigate to your project and start coding!

Example

$ gosetup
# Follow the prompts...
# Project "my-api" created successfully in ./my-api

$ cd my-api
$ go run main.go

Scaffold in Current Directory

Use . as the project name to scaffold into your existing directory:

$ mkdir my-go-project
$ cd my-go-project
$ gosetup
# Enter: .
# Files will be created in current directory

Project Structure

The generated project includes:

my-go-app/
├── main.go              # Entry point
├── go.mod               # Go module file
├── README.md            # Project documentation
├── .env.local           # Environment variables
├── Dockerfile           # Docker configuration
├── docker-compose.yml   # Multi-container setup with PostgreSQL
├── cmd/
│   └── my-go-app/       # Application entry point
├── internal/            # Private application code
│   ├── api/             # HTTP handlers
│   ├── app/             # Application logic
│   ├── middleware/      # HTTP middleware
│   ├── utils/           # Utility functions
│   ├── tokens/          # Token management
│   ├── routes/          # Route definitions
│   └── stores/          # Database stores
├── migrations/          # Database migrations (Goose)
│   ├── 00001_users.sql
│   └── 00002_tokens.sql
└── pkg/                 # Public packages

Requirements

  • Go 1.22+ (Download)
  • Node.js/Bun for installation via npm

Quick Start After Generation

cd my-go-app

# Install dependencies
go mod download
go mod tidy

# Set up database (if using PostgreSQL)
docker-compose up -d

# Run migrations
goose -dir migrations postgres "$DB_URL" up

# Start the application
go run main.go

Environment Variables

Create a .env.local file with:

PORT=8080
POSTGRES_DB=postgres
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
DB_URL=postgres://user:password@localhost/dbname
TEST_DB_URL=postgres://user:password@localhost/test_dbname
PRODUCTION_DB_URL=postgres://user:password@production/dbname

Development

Build from Source

git clone https://github.com/divin3circle/gosetup.git
cd gosetup
bun install
bun run dev

Build Standalone Binary

bun run build
./bin/gosetup

License

MIT

Contributing

Contributions are welcome! Feel free to open issues and pull requests.

Repository

https://github.com/divin3circle/gosetup