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

@ali_samir/create-react-stack

v1.1.3

Published

πŸš€ A modern React project generator with Vite, TypeScript, Tailwind CSS, and TanStack Query

Readme

πŸš€ @ali_samir/create-react-stack

npm version Build Status License: MIT GitHub stars GitHub forks

⚑ The fastest way to create modern React applications with a complete, production-ready stack.

Create React Stack is a powerful CLI tool that generates modern React applications with Vite, TypeScript, Tailwind CSS, TanStack Query, and all the essential tools you need to build amazing web applications.

✨ Features

  • πŸš€ Lightning Fast: Powered by Vite for instant development and optimized builds
  • πŸ›‘οΈ Type Safe: Full TypeScript support with strict type checking
  • 🎨 Beautiful UI: Tailwind CSS with custom design system and responsive components
  • πŸ“‘ Smart Data Fetching: TanStack Query for efficient server state management
  • πŸ”§ Code Quality: ESLint and Prettier configured with React and TypeScript best practices
  • πŸš€ Production Ready: GitHub Actions CI/CD, optimized builds, and deployment-ready configuration
  • πŸ“± Responsive Design: Mobile-first approach with modern UI components
  • 🎯 Developer Experience: Hot reload, TypeScript IntelliSense, and comprehensive tooling

πŸ“¦ Installation & Usage

Quick Start

npx @ali_samir/create-react-stack my-app
cd my-app
npm run dev

That's it! Your React app is ready to go. πŸŽ‰

Advanced Usage

# Create app with custom name
npx @ali_samir/create-react-stack my-awesome-app

# Skip dependency installation
npx @ali_samir/create-react-stack my-app --skip-install

# Get help
npx @ali_samir/create-react-stack --help

πŸ“‚ What's Included

Your new React app comes with:

my-app/
β”œβ”€β”€ public/                 # Static assets
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/         # Reusable React components
β”‚   β”‚   β”œβ”€β”€ Header.tsx
β”‚   β”‚   β”œβ”€β”€ Hero.tsx
β”‚   β”‚   β”œβ”€β”€ Features.tsx
β”‚   β”‚   β”œβ”€β”€ ApiExample.tsx
β”‚   β”‚   └── Footer.tsx
β”‚   β”œβ”€β”€ services/           # API services and utilities
β”‚   β”‚   └── api.ts
β”‚   β”œβ”€β”€ App.tsx            # Main application component
β”‚   β”œβ”€β”€ main.tsx           # Application entry point
β”‚   └── index.css          # Global styles with Tailwind
β”œβ”€β”€ .eslintrc.cjs          # ESLint configuration
β”œβ”€β”€ .prettierrc            # Prettier configuration
β”œβ”€β”€ tailwind.config.js     # Tailwind CSS configuration
β”œβ”€β”€ tsconfig.json          # TypeScript configuration
β”œβ”€β”€ vite.config.ts         # Vite configuration
└── package.json           # Dependencies and scripts

πŸ› οΈ Available Scripts

npm run dev          # Start development server
npm run build        # Build for production
npm run preview      # Preview production build
npm run lint         # Run ESLint
npm run lint:fix     # Fix ESLint errors
npm run format       # Format code with Prettier
npm run format:check # Check code formatting

πŸš€ Example Usage

Basic Component

import { useState } from "react";

function Counter() {
  const [count, setCount] = useState(0);

  return (
    <div className="p-6 bg-white rounded-lg shadow-md">
      <h2 className="text-2xl font-bold mb-4">Counter: {count}</h2>
      <button onClick={() => setCount(count + 1)} className="btn btn-primary">
        Increment
      </button>
    </div>
  );
}

Data Fetching with TanStack Query

import { useQuery } from "@tanstack/react-query";
import { fetchRandomUser } from "./services/api";

function UserProfile() {
  const { data, isLoading, error } = useQuery({
    queryKey: ["user"],
    queryFn: fetchRandomUser,
  });

  if (isLoading) return <div>Loading...</div>;
  if (error) return <div>Error loading user</div>;

  return (
    <div className="card">
      <h3>
        {data.name.first} {data.name.last}
      </h3>
      <p>{data.email}</p>
    </div>
  );
}

🎨 Styling

The project uses Tailwind CSS with a custom design system:

// Pre-configured utility classes
<button className="btn btn-primary">Primary Button</button>
<button className="btn btn-secondary">Secondary Button</button>
<div className="card">Card Content</div>

πŸ”§ Configuration

TypeScript

The project includes strict TypeScript configuration with path mapping:

// Use path mapping for cleaner imports
import { Button } from "@/components/Button";
import { api } from "@/services/api";

ESLint

Pre-configured with React, TypeScript, and Tailwind rules:

npm run lint        # Check for issues
npm run lint:fix    # Auto-fix issues

Prettier

Code formatting with Tailwind plugin:

npm run format      # Format all files
npm run format:check # Check formatting

πŸš€ Deployment

Vercel (Recommended)

  1. Push your code to GitHub
  2. Connect your repository to Vercel
  3. Deploy with zero configuration

Netlify

  1. Build your project: npm run build
  2. Deploy the dist folder to Netlify

Docker

FROM node:18-alpine as builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build

FROM nginx:alpine
COPY --from=builder /app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

🀝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

Development Setup

# Clone the repository
git clone https://github.com/alisamirali/create-react-stack.git
cd create-react-stack

# Install dependencies
npm install

# Test the CLI locally
node bin/create-react-stack.js test-app --skip-install

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

⭐ Show Your Support

If you find this project helpful, please give it a star! ⭐

πŸ™ Acknowledgments

  • Vite - Next generation frontend tooling
  • React - A JavaScript library for building user interfaces
  • TypeScript - Typed JavaScript at any scale
  • Tailwind CSS - A utility-first CSS framework
  • TanStack Query - Powerful data synchronization for React

Made with ❀️ by the community