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

fogoe

v1.0.6

Published

Open-source CLI for zero-friction Node.js backend initialization with TypeScript support.

Readme

Fogoe

A minimal CLI for initializing Node.js backend projects with TypeScript support and zero friction.

Problem

Backend developers repeatedly spend time on the same setup tasks:

  • Initializing projects
  • Installing base dependencies
  • Configuring entry points
  • Creating minimal server boilerplate

Even without business logic, reaching a basic "server is alive" state requires manual work. This repetitive setup creates unnecessary friction at the start of every project.

Solution

Fogoe generates only the essentials — a server, a single route, and a working application lifecycle. Reach a running state in seconds, with full freedom to extend or restructure as needed.

🌐 Website: https://sooriya04.github.io/fogoe-site/

Usage

Run Fogoe directly without installation:

npx fogoe          # Interactive initializer
npx fogoe --help   # Show available commands

Optionally, install globally:

npm install -g fogoe
fogoe              # Interactive initializer
fogoe init         # Initialize Git in existing project
fogoe push "msg"   # Push changes

Local installation is not required.

What Fogoe Generates

Fogoe generates a working backend project with server setup and one route. The generated code is intentionally minimal and extensible, designed to reach a "server is running" state immediately. You control what happens next.

Commands

Fogoe provides specific commands to manage your project lifecycle:

  • fogoe: Launches the interactive setup wizard to scaffold a new project.
  • fogoe init: Initializes a Git repository in an existing project and updates fogoe.config.json to enable Git features.
  • fogoe push "<message>": A shortcut to stage (git add .), commit (git commit -m), and push (git push) your changes to the remote repository.
  • fogoe --help: Displays the usage guide and command list.

Architecture Options

Fogoe supports two architecture patterns:

Minimal

  • Single server entry point
  • Fast startup
  • No enforced structure
  • Best for prototypes, microservices, or developers who prefer custom organization

MVC

  • Controllers, routes, services, and config directories
  • Still minimal, no business logic included
  • Best for projects that anticipate growth or teams that prefer conventional structure

Choose based on project scope and team preferences.

Supported Options

Fogoe supports the following options during initialization:

  • Languages: JavaScript, TypeScript
  • Frameworks: Express, Fastify
  • Module systems: CommonJS, ES Modules
  • Git Integration: Optional GitHub repository initialization

Packages Included

| Category | Options | |----------|---------| | Language | JavaScript, TypeScript | | Framework | Express, Fastify | | CORS | cors, @fastify/cors | | Environment | dotenv | | Database | mongoose, prisma, mysql2, pg | | Hashing | bcrypt, argon2 | | Auth | jsonwebtoken (optional) | | Git | GitHub initialization (optional) |

Configuration Philosophy

Fogoe scaffolds projects, it does not configure full systems.

  • Database, authentication, and encryption are opt-in dependencies
  • Configuration is managed through environment variables (.env)
  • No schemas, migrations, or business logic are generated
  • Developers retain full control over implementation details

Fogoe provides the foundation. You build the system.

TypeScript Support

Fogoe fully supports TypeScript with automatic configuration:

  • Automatic Type Installation: All necessary @types/* packages are installed based on your selections
  • Smart tsconfig.json: Generated with optimal settings for your module type and architecture
  • Path Aliases: MVC projects get clean import paths (@routes/*, @controllers/*, etc.)
  • Zero Configuration: TypeScript just works out of the box

TypeScript Packages Automatically Installed:

  • Core: typescript, ts-node, tsx, @types/node
  • Express: @types/express, @types/cors
  • Fastify: @fastify/type-provider-typebox
  • Databases: @types/pg, @types/mysql2 (when needed)
  • Libraries: @types/bcrypt, @types/jsonwebtoken (when selected)

Git Integration

Fogoe provides a state-driven Git flow to manage your repository:

  • Automatic .gitignore: Configured with node_modules/ and .env
  • Initial Commit: All project files committed automatically
  • GitHub Push: Connects to your repository and pushes the first commit
  • State Validation: fogoe push validates the Git state from fogoe.config.json before executing.
  • Initialization Shortcut: fogoe init handles both repository setup and configuration state updates.

Git Setup Flow:

  1. Select "yes" when prompted "Initialize Git repository?" during setup (or run fogoe init later).
  2. Enter branch name (default: main)
  3. Provide your GitHub repository URL
  4. Fogoe handles the rest: init → add → commit → push
  5. Use fogoe push "your message" for all subsequent updates.

Non-goals

Fogoe intentionally does not:

  • Generate business logic
  • Enforce framework lock-in
  • Create database schemas or migrations
  • Make assumptions about production deployment
  • Impose opinionated architecture beyond initialization

Support

For bugs or feature requests, open an issue on GitHub.

For general questions, contact: [email protected]

Contributing

Issues and pull requests are welcome. Keep changes minimal and aligned with Fogoe's philosophy of zero friction initialization.

License

Apache License 2.0

Copyright (c) 2026 Sooriya B

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "License" distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.