This starter kit features Qwik, GraphQL and Tailwind CSS.
- Jest - Test runner
- Typescript - Type checking
- Storybook - Component library
- Mock Service Worker - Mock REST / GraphQL API
- ESLint - Code linting
- Prettier - Code formatting
In this starters/qwik-graphql-tailwind/src/routes
directory you will find the home
, counter
and data-fetching
directories.
-
src/routes
: Provides the directory based routing, which can include a hierarchy oflayout.tsx
layout files, and anindex.tsx
file as the page. Additionally,index.ts
files are endpoints. Please see the routing docs for more info. -
src/components
: Recommended directory for components. -
public
: Any static assets, like images, can be placed in the public directory. Please see the Vite public directory for more info.
npm create @this-dot/starter --kit qwik-graphql-tailwind
or
yarn create @this-dot/starter --kit qwik-graphql-tailwind
- Follow the prompts to select the
qwik-graphql-tailwind
starter kit and name your new project. cd
into your project directory and runyarn
.- Run
yarn start
to start the development server. - Open your browser to
http://localhost:5173
to see the included example code running.
git clone https://github.com/thisdot/starter.dev.git
- Copy and rename the
starters/qwik-graphql-tailwind
directory to the name of your new project. cd
into your project directory and runyarn
.- Run
yarn start
to start the development server. - Open your browser to
http://localhost:5173
to see the included example code running.
yarn start
- Starts the development server.yarn build
- Builds a compiled version of your app.yarn test
- Runs the unit tests.yarn storybook
- Starts the Storybook UI.yarn lint
- Runs ESLint on the project.yarn prettier
- Formats code for the entire project
To Be completed
For the Live Demo on Netlify we were unable to get the Netlify adapter to work with Qwik at this time due to a bug in the adapter (limitation on the Qwik side). We are in correspondence with the Qwik core team and will update the build and the demo once this bug has been fixed. We are temporarily using the Static adaptor instead for this Netlify demo so it is possible that you may notice some issues. However, the demo is working fine locally, so we highly recommend you clone the repo and run it locally to see the full potential of the starter kit!
npm run build.server
This starter site is configured to deploy to Netlify Edge Functions, which means it will be rendered at an edge location near to your users.
The Netlify CLI can be used to preview a production build locally. To do so: First build your site, then to start a local server, run:
- Install Netlify CLI globally
npm i -g netlify-cli
. - Build your site with both ssr and static
npm run build
. - Start a local server with
npm run serve
. In this project,npm run serve
uses thenetlify dev
command to spin up a server that can handle Netlify's Edge Functions locally. - Visit http://localhost:8888/ to check out your site.
Netlify Edge Functions declarations can be configured to run on specific URL patterns. Each edge function declaration associates one site path pattern with one function to execute on requests that match the path. A single request can execute a chain of edge functions from a series of declarations. A single edge function can be associated with multiple paths across various declarations.
This is useful to determine if a page response should be Server-Side Rendered (SSR) or
if the response should use a static-site generated (SSG) index.html
file instead.
By default, the Netlify Edge adaptor will generate a .netlify/edge-middleware/manifest.json
file, which is used by the Netlify deployment to determine which paths should, and should not, use edge functions.
To override the generated manifest, you can add a declaration to the netlify.toml
using the [[edge_functions]]
config. For example:
[[edge_functions]]
path = "/admin"
function = "auth"
You can deploy your site to Netlify either via a Git provider integration or through the Netlify CLI. This starter site includes a netlify.toml
file to configure your build for deployment.
Once your site has been pushed to your Git provider, you can either link it in the Netlify UI or use the CLI. To link your site to a Git provider from the Netlify CLI, run the command:
netlify link
This sets up continuous deployment for your site's repo. Whenever you push new commits to your repo, Netlify starts the build process..
If you wish to deploy from the CLI rather than using Git, you can use the command:
netlify deploy --build
You must use the --build
flag whenever you deploy. This ensures that the Edge Functions that this starter site relies on are generated and available when you deploy your site.
Add --prod
flag to deploy to production.
npm run build.server
This demo app gets deployed to Netlify on changes to the main
branch.