Skip to content
This repository has been archived by the owner on Nov 23, 2023. It is now read-only.

Specification #1

Open
galvez opened this issue Feb 11, 2022 · 1 comment
Open

Specification #1

galvez opened this issue Feb 11, 2022 · 1 comment
Assignees
Labels
documentation Improvements or additions to documentation
Milestone

Comments

@galvez
Copy link
Member

galvez commented Feb 11, 2022

Fastify DX

Fastify DX is a CLI for rapid application development using the Fastify stack. It aims to offer many of the same functionalities found in Next.js, Nuxt.js and Remix, but instead of relying on deep runtime internals, focus on code generation and glue code for setting up and running Fastify projects, both in development and production.

Motivations

  • Effective SSR is locked away in black boxes today
    • Lots of buy-in into chosen framework is necessary
  • Companies often struggle scaling bringing Next.js apps to optimal performance
    • Next.js, Nuxt.js and Remix are all based on the Express middleware paradigm
  • Good chunk of projects still dependent on CRA/webpack
  • No de-facto solution for minimal (primitives only) SSR available

Features

  • Not a framework nor runtime, all generated code is pure Fastify and plugins
  • CLI web view with insights and logging filters for available sites
  • Out-of-the-box integrated hot reload for server with Vite app

Core

Packages that are part of the core boilerplate.

  • middie
  • fastify
  • fastify-redis (optional)
  • fastify-mongodb (optional)
  • fastify-postgresql (optional)
  • mercurius (optional)
  • fastify-api (optional)
  • fastify-vite
  • fastify-static

Commands

The CLI is meant to be installed globally, each command backed by zx script which can also be ejected and tweaked to meet custom project requirements.

  • fdx eject <boilerplate>: ejects boilerplate in its original format.
  • fdx apply: modifies current boilerplate but based on settings uni.config.js
  • fdx dev <site>: runs the specified site in development mode, or the last site ran.
  • fdx build <site>: runs the specified site in production mode
  • fdx start <site>: runs the specified site in production mode
  • fdx gen <site>: statically generates the specified site

The goal is to build up from fastify-cli with several DX oriented changes and additions, along with new and updated documentation.

@mcollina
Copy link
Member

Nice work!

@galvez galvez self-assigned this Jul 10, 2022
@galvez galvez added the documentation Improvements or additions to documentation label Jul 10, 2022
@galvez galvez added this to the v1.2 milestone Dec 19, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

2 participants