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 🙏

© 2024 – Pkg Stats / Ryan Hefner

cra-template-structure

v3.0.4

Published

CRA template, Directory structure for big React application.

Downloads

101

Readme

cra-template-structure

This CRA template is made for the development of large applications.

Using this command to install this CRA template:

npx create-react-app --template structure app

Includes the latest version of following NPM packages:

  • Typescript
  • Redux Toolkit
  • React Router DOM

Directory Structure

  • assets
    • audio
    • data
    • fonts
    • images
    • styles
    • video
  • components
  • configs
  • layouts
  • context
  • helpers
  • hooks
  • interfaces
  • languages
  • pages
  • services
  • redux

Assets

As the name says, it contains assets of our project like images, styles, fonts, ...

Components

Components are the building blocks of any react project. This folder consists of a collection of UI components like buttons, modals, inputs, etc., that can be used across various files in the project. Each component should consist of a test file to do a unit test as it will be widely used in the project.

Configs

A place to store application configuration, for example: API url, default languages, routes, ...

Layouts

This is just a special folder for placing any layout based components. This would be things like a sidebar, navbar, container, etc.

Context

The context folder stores all your React context files that are used across multiple pages. I find on larger projects you will have multiple context you use across your application and having a single folder to store them is really useful.

Helpers

It contains the reusable helper functions.

Hooks

The hooks folder contains every single custom hook in your entire project. This is a useful folder to have in any size project since almost every project will have multiple custom hooks so having a single place to put them all is really useful.

Interfaces

A place to store interfaces and types in Typescript.

Languages

A place to store multi language files.

Pages

The files in the pages folder indicate the route of the React application. Each file in this folder contains its route. A page can contain its subfolder. Each page has its state and is usually used to call an async operation. It usually consists of various components grouped.

Services

It contains the http request function using axios or ...

Redux

A place to store Redux files.