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

create-sara-project

v2.0.1

Published

<h1 align="center">Syntactically Awesome React App πŸš€</h1>

Downloads

7

Readme

Getting Started

Dependencies

NPM is the project package manager.

Because create-sara-project has a lot of configurations, we have tested the app with this environment versions:

[email protected]
[email protected]
[email protected]

If something is not working, try to update to these specific versions...

Update package

If you have previously installed:

npm i create-sara-project -g

and you want to update it, run:

npm update create-sara-project -g

Commands

Install

Run the following command to install create-sara-project globally

npm i create-sara-project -g

Then you can go to your project folder and run:

create-sara-project

Once you run the command the app will ask you the app name and the template type...

Once you created a sara project...

you can run the development server:

cd <app_name>
npm start

Open cypress

npm run cypress:open

Run cypress tests

npm test

Build

npm run build

Test

Cypress is the testing framework for this project.
Check the ./cypress configuration folder.

Docker

SARA uses Docker to containerize this app. Check the Dockerfile configuration file.

Linters and Code Style

The mix of tools used to ensure code and commit style and best practices:

Examples

SARA project for Monorepos

If you are building a monorepo, here is an example of how to implement a monorepo with create-sara-project πŸš€

Template structure

.
β”œβ”€β”€ src
β”‚    β”œβ”€β”€ assets
β”‚    β”‚    β”œβ”€β”€ fonts
β”‚    β”‚    β”‚    └── ...
β”‚    β”‚    β”œβ”€β”€ css
β”‚    β”‚    β”‚    └── ...
β”‚    β”‚    β”œβ”€β”€ icons
β”‚    β”‚    β”‚    └── ...
β”‚    β”‚    └── img
β”‚    β”‚         └── ...
β”‚    β”œβ”€β”€ components
β”‚    β”‚    β”œβ”€β”€ ...
β”‚    β”‚    β”œβ”€β”€ Modals
β”‚    β”‚    β”‚    └── ...
β”‚    β”‚    β”œβ”€β”€ Toastr
β”‚    β”‚    β”‚    └── ...
β”‚    β”‚    └── <component-name>
β”‚    β”‚         β”œβ”€β”€ <component-name>.types.ts   # Component types
β”‚    β”‚         β”œβ”€β”€ <component-name>.module.css
β”‚    β”‚         └── <component-name>.tsx
β”‚    β”œβ”€β”€ layouts
β”‚    β”‚    └── ... # AuthLayout/AdminLayout/etc
β”‚    β”œβ”€β”€ config
β”‚    β”‚    β”œβ”€β”€ ...
β”‚    β”‚    └── constants.ts
β”‚    β”œβ”€β”€ contexts
β”‚    β”‚    β”œβ”€β”€ ...
β”‚    β”‚    └── <page_name>
β”‚    β”‚         └── Page.context.ts # Context page/multiple pages
β”‚    β”‚
β”‚    β”œβ”€β”€ store   # Without the need of redux, just useReducer hook
β”‚    β”‚    β”œβ”€β”€ actions
β”‚    β”‚    β”‚    └── ...
β”‚    β”‚    └── reducers
β”‚    β”‚         └── ...
β”‚    β”œβ”€β”€ pages
β”‚    β”‚    β”œβ”€β”€ ...
β”‚    β”‚    └── <page_name> # Keep unique page components here
β”‚    β”‚         β”œβ”€β”€ ...
β”‚    β”‚         β”œβ”€β”€ <component-name>.tsx
β”‚    β”‚         └── <folder>
β”‚    β”‚               β”œβ”€β”€ ...
β”‚    β”‚               β”œβ”€β”€ <component-name>.tsx
β”‚    β”‚               └── <folder>
β”‚    β”œβ”€β”€ utils
β”‚    β”‚    └── ...
β”‚    β”œβ”€β”€ shared  # api/global-state related interfaces/types
β”‚    β”‚     β”œβ”€β”€ interfaces
β”‚    β”‚     β”‚   └── ...
β”‚    β”‚     └── types
β”‚    β”‚         └── ...
β”‚    β”œβ”€β”€ cache
β”‚    β”‚     └── ...
β”‚    β”œβ”€β”€ animations  # variants from framer motion
β”‚    β”‚     └── ...
β”‚    β”œβ”€β”€ hooks
β”‚    β”‚     └── ...
β”‚    β”œβ”€β”€ App.tsx
β”‚    β”œβ”€β”€ index.tsx
β”‚    └── services    # rest-api related routes and validators (zod)
β”‚          β”œβ”€β”€ routes
β”‚          β”‚     └── ...
β”‚          └── schemas # zod schemas
β”‚                β”œβ”€β”€ ...
β”‚                └── <model.zod>.ts
β”œβ”€β”€ cypress
β”‚    β”œβ”€β”€ .gitignore
β”‚    β”œβ”€β”€ support
β”‚    β”‚     └── ...
β”‚    β”œβ”€β”€ plugins
β”‚    β”‚     └── ...
β”‚    β”œβ”€β”€ fixtures
β”‚    β”‚     └── ...
β”‚    └── integration
β”‚          └── ...
β”œβ”€β”€ scripts
β”‚    └── ...
β”œβ”€β”€ ...
β”œβ”€β”€ ...
β”œβ”€β”€ ...
└── README.md