Code Monkey home page Code Monkey logo

gasket's Introduction

Gasket

Gasket helps developers make frameworks to power their apps. There are several presets and plugins available with which to make frameworks and construct apps. The various commands, lifecycles, and structures are all enabled by different plugins you can choose to use.

If you are new to Gasket, you might want to first give it a spin following the Quick Start Guide. From there, reference the guides to start developing your apps and making your frameworks.

The tables of contents below are generated by the docs command enabled by @gasket/plugin-docs, which is recommended to view app docs. Links will load the docs for the plugin or package that implements the feature.

Guides

Help and explanations docs

Name Description
Lifecycle Flowchart A flowchart detailing how lifecycles are interrelated.
Configuration Guide Configuring Gasket apps
Presets Guide How to use and author presets
Package Management Guide Managing dependencies in Gasket apps
Common "Gotchas" Tips and tricks to be aware of
Plugins Guide How to use and author plugins
Progressive Web Apps Guide Making Progressive Web Apps (PWA) with Gasket
Express Setup Guide Adding middleware and routes for Express
Next.js Routing Guide Basic and advance routing for Next.js
Next.js Deployment Guide Steps to deploy a Next.js Gasket app
State Management with Redux Using Redux with Gasket apps
Webpack Configuration Guide Configuring Webpack in Gasket apps

Commands

Available commands

Name Description
analyze Generate analysis report of webpack bundles
build Prepare the app to be started
create Create a new Gasket app
docs Generate docs for the app
help Get usage details for Gasket commands
local Build and start the app in development mode
start Run the prepared app

Lifecycles

Available lifecycles

Name Description
appEnvConfig Adjust app level config after merged for the env
appRequestConfig Adjust app level config for each request
build Prepare the app to be started
composeServiceWorker Update the service worker script
configure Allows plugins to adjust config before command is run
create App level plugins
createServers Setup the create-servers options
docsGenerate Generate graphs for display in documation
docsSetup Set up what docs are captured and how to transform them
docsView View the collated documentation
errorMiddleware Add Express style middleware for handling errors with Fastify
errorMiddleware Add Express style middleware for handling errors
express Modify the Express instance to for adding endpoints
fastify Modify the Fastify instance to for adding endpoints
getCommands Allows plugins to add CLI commands
init Signals the start of any Gasket command before it is run
initReduxState Setup the next config
initReduxStore Update the next app instance before prepare
initWebpack Create a webpack config
intlLanguage Set the language for which locale files to load
logTransports Setup Winston log transports
manifest Modify the the web manifest for a request
metadata Allows plugins to adjust their metadata
metrics Collect metrics for an app
middleware Add Express style middleware
middleware Add Express style middleware for Fastify
next Update the next app instance before prepare
nextConfig Setup the next config
nextExpress Access the prepared next app and express instance
postCreate App level plugins
preboot Any setup before the app starts
prompt Gasket config for an app
servers Access to the server instances
start Run the prepared app
terminus Setup the terminus options
webpack Modify webpack config with partials or by mutating
webpackChain Setup webpack config by chaining
workbox Setup Workbox config and options

Structures

Available structure

Name Description
.docs/ Output of the docs command
config/ App configuration using environment files
lifecycles/ JavaScript files to hook lifecycles with matching name
locales/ Locale JSON files with translation strings
pages/ NextJS routing
plugins/ One-off plugins for apps
test/ Test files
app.config.js App configuration with environment overrides
gasket.config.js Gasket config for an app
jest.config.js Jest configuration
routes.js Routing when using next-routes
store.js Setup to make Redux store

Presets

Available presets

Name Version Description
@gasket/preset-nextjs 5.1.3 Basic NextJS Framework
@gasket/preset-pwa 5.0.2 Turn Gasket apps into Progressive Web Apps

Plugins

Available plugins

Name Version Description
@gasket/plugin-analyze 5.0.2 Gasket Analyzer Plugin
@gasket/plugin-command 5.1.3 Plugin to enable other plugins to inject new gasket commands
@gasket/plugin-config 5.3.0 Supports application-specific (non-Gasket) configuration
@gasket/plugin-docs 5.1.3 Centralize doc files from plugins and modules
@gasket/plugin-docs-graphs 5.1.3 Generate mermaid graphs of an applications gasket lifecycles
@gasket/plugin-docsify 5.1.3 View collated docs with Docsify
@gasket/plugin-express 5.1.3 Adds express support to your application
@gasket/plugin-fastify 5.1.3 Adds fastify support to your application
@gasket/plugin-git 5.1.3 Adds git support to your application
@gasket/plugin-https 5.1.3 Create http/s servers with graceful termination
@gasket/plugin-intl 5.1.2 NodeJS script to build localization files.
@gasket/plugin-jest 5.0.2 Integrated jest into your application.
@gasket/plugin-lifecycle 5.1.3 Allows a gasket/ directory to be used for lifecycle hooks in applications.
@gasket/plugin-lint 5.1.3 Adds GoDaddy standard linting to your application
@gasket/plugin-log 5.0.2 Gasket log plugin
@gasket/plugin-manifest 5.0.2 The web app manifest for progressive Gasket applications
@gasket/plugin-metadata 5.1.3 Adds metadata to gasket lifecycles
@gasket/plugin-metrics 5.0.2 Collect metrics for gasket commands
@gasket/plugin-mocha 5.1.3 Integrates mocha based testing in to your Gasket application
@gasket/plugin-nextjs 5.1.3 Adds Next support to your application
@gasket/plugin-redux 5.0.2 Gasket Redux Setup
@gasket/plugin-service-worker 5.0.2 Gasket Service Worker Plugin
@gasket/plugin-start 5.1.3 Adds commands for building and starting Gasket apps
@gasket/plugin-webpack 5.1.3 Adds webpack support to your application
@gasket/plugin-workbox 5.0.2 Gasket Workbox Plugin

Modules

Supporting modules

Name Version Description
@gasket/assets 5.0.2 Gasket assets
@gasket/cli 5.3.0 CLI for rapid application development with gasket
@gasket/engine 5.1.3 Plugin engine for gasket
@gasket/fetch 5.0.2 Gasket Fetch API
@gasket/intl 5.0.2 React component library to enable localization for gasket apps.
@gasket/log 5.0.2 Gasket client and server logger
@gasket/redux 5.0.2 Gasket Redux Configuration
@gasket/resolve 5.1.0 Essential module resolution & configuration management for gasket plugins & presets.
@gasket/utils 5.1.1 Reusable utilities for Gasket internals

License

Gasket is MIT licensed.

gasket's People

Contributors

3rd-eden avatar agerard-godaddy avatar andyfleming avatar blackswanny avatar cfellin1 avatar danielsanudo avatar decompil3d avatar fritzmonkey avatar gingur avatar indexzero avatar kinetifex avatar kquerna avatar melanieseltzer avatar msluther avatar rxmarbles avatar shaun2d2 avatar sivanmehta avatar smehta-godaddy avatar srapp avatar swaagie avatar tommy2016x avatar wjarvis-godaddy avatar wjarvis1 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.