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.tsxlayout files, and anindex.tsxfile as the page. Additionally,index.tsfiles 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-tailwindor
yarn create @this-dot/starter --kit qwik-graphql-tailwind- Follow the prompts to select the
qwik-graphql-tailwindstarter kit and name your new project. cdinto your project directory and runyarn.- Run
yarn startto start the development server. - Open your browser to
http://localhost:5173to see the included example code running.
git clone https://github.com/thisdot/starter.dev.git- Copy and rename the
starters/qwik-graphql-tailwinddirectory to the name of your new project. cdinto your project directory and runyarn.- Run
yarn startto start the development server. - Open your browser to
http://localhost:5173to 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 serveuses thenetlify devcommand 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 linkThis 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 --buildYou 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.