1Need to install the following packages:
2[email protected]3Ok to proceed? (y)
Press
y +
Enter
and then choose the following highlighted options.
Choose Rspack as bundler option.
1NX Let's create a new workspace [https://nx.dev/getting-started/intro]23? Which bundler would you like to use? …
4Vite [ https://vitejs.dev/ ]5Webpack [ https://webpack.js.org/ ]6Rspack [ https://www.rspack.dev/ ]
Choose None.
1✔ Which bundler would you like to use? · rspack
2? Test runner to use for end to end (E2E) tests …
3Playwright [ https://playwright.dev/ ]4Cypress [ https://www.cypress.io/ ]5None
When you are prompted to choose styling solution - choose Tailwind.
Choose Skip for now when you are asked to choose CI.
1? Set up CI with caching, distribution and test deflaking …
2(it's free and can be disabled any time)3Yes, for GitHub Actions with Nx Cloud
4Yes, for CircleCI with Nx Cloud
5Skip for now
Choose Skip for now when you are asked for remote caching option
1? Would you like remote caching to make your build faster? …
2(it's free and can be disabled any time)3Yes
4Skip for now
. If you want to use our examples to try a deployment, remember to fork it.
Why fork it
When you are trying to deploy an application, Zephyr will figure out if you have write_access based on which organization the repository belong to. Thus if you fork it, it will be under your organization and you will be able to deploy.
Now you are all set! Go back to the terminal in current project and run
Terminal
1nx build
You will see the terminal output like so - your deployed URL is before the final emitting process:
Terminal
1❯ nx build
23 NX Its time to update Nx 🎉
45Your repository uses a higher version of Nx (19.2.2) than your global CLI version (18.1.2)6For more information, see https://nx.dev/more-concepts/global-nx
789> nx run my-first-mf-app:build:production
1011[zephyr] You are already logged in12● ━━━━━━━━━━━━━━━━━━━━━━━━━ (70%) sealing chunk ids
13[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[70]: uploading missing assets to zephyr (queued 1 out of 2)14[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[70]: uploaded local snapshot in 263ms
15[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[70]: uploaded missing assets to zephyr (1 assets in 144ms, 236.95kb)16[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[70]: deploying to https://userName_69-_my-first-mf-app_source-my-f-53eac2-ze.valorkin.dev
17[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[70]: deploying to https://userName_70-_my-first-mf-app_source-my-f-38438b-ze.valorkin.dev
18[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[70]: deploying to https://_my-first-mf-app_source-my-first-mf-app-username-ze.valorkin.dev
19● ━━━━━━━━━━━━━━━━━━━━━━━━━ (98%) emitting emit
20[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[70]: build deployed in 774ms
21● ━━━━━━━━━━━━━━━━━━━━━━━━━ (100%) emitting after emit
22PublicPath: auto
23asset index.html 362 bytes [emitted]24asset main.js 237 KiB [emitted](name: main)25Entrypoint main 237 KiB = main.js
26runtime modules 6 modules
27+ 24 modules
28Rspack 0.6.5 compiled successfully in1.35 s (036ed42385758a40269f)2930———————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
3132 NX Successfully ran target build for project my-first-mf-app (2s)
Press
Command
and left click on the URL at the same time to open your deployed URL in your default browser. Meanwhile open your side panel by clicking on . Note that this URL is alive as long you don't delete your account and you can share it with anyone to preview it.
Every application you have deployed on Zephyr (under the same account) will be displayed under Name, categorized by repository name and their package name. Click on the dropdown menu under Version you will only the initial version of your app.
Now you have deployed the first version, let's add modify the app and deploy a new version. Open the file src/app/app.tsx and change the content of your home page:
If you run a nx serve you will see your app changed to:
Save the file and go back to the terminal to deploy the new version of your application - run:
Terminal
1nx build
You will see the new version of your app both in the console output and under Version dropdown in on Chrome Extension.
Terminal
1❯ nx build
23 NX Its time to update Nx 🎉
45Your repository uses a higher version of Nx (19.2.2) than your global CLI version (18.1.2)6For more information, see https://nx.dev/more-concepts/global-nx
789> nx run my-first-mf-app:build:production
1011[zephyr] You are logged in12● ━━━━━━━━━━━━━━━━━━━━━━━━━ (62%) building builtin:swc-loader??ruleSet[1].rules[2].use[0]!/username/my-first-mf-app/node_modules/scheduler/
13[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[71]: uploading missing assets to zephyr (queued 2 out of 2)14[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[71]: uploaded local snapshot in 217ms
15[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[71]: uploaded missing assets to zephyr (2 assets in 342ms, 212.50kb)16[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[71]: deploying to https://account_71-_my-first-mf-app_source-my-f-4b579f-ze.valorkin.dev
17[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[71]: deploying to https://account_70-_my-first-mf-app_source-my-f-38438b-ze.valorkin.dev
18[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[71]: deploying to https://_my-first-mf-app_source-my-first-mf-app-username-ze.valorkin.dev
19● ━━━━━━━━━━━━━━━━━━━━━━━━━ (98%) emitting emit
20[zephyr]: [_my-first-mf-app_source.my-first-mf-app.username](account)[71]: build deployed in 1033ms
21● ━━━━━━━━━━━━━━━━━━━━━━━━━ (100%) emitting after emit
22PublicPath: auto
23asset index.html 398 bytes [emitted]24asset main.js 212 KiB [emitted](name: main)25Entrypoint main 212 KiB = main.js
26runtime modules 6 modules
27+ 23 modules
28Rspack 0.6.5 compiled successfully in5.60 s (ecb32c555d4d1978eae7)2930—————————————————————————————————————————————————————————————————————————————————
3132NX Successfully ran target build for project my-first-mf-app (6s)
Now the latest version of your app is deployed. You can check the source code till this stage here:
The names of your versions are generated by Zephyr. The first part of the name is the branch name, serialised version of your email, followed by the version number.
The first option in the dropdown menu under Version is the latest deployment of your app. In the dropdown menu you will see more previous version of your app.
But if you want to rollback to the previous version of your deployed application, you can click on one of the options and that version will show up in the browser, once you confirm that you want to push it to production you can click on Publish updates at the bottom of the side panel.
You can check the application you just deployed in our chrome extension.
Head to Chrome Web Store to install our chrome extension - Zephyr Mission Control. Click on Add to Chrome and confirm with Add extension. After you finish remember to pin the extension by clicking on on extension management tab to provide you a quicker access to Zephyr's side panel.
Once you click on the side panel will pop up and prompt you to log in (if you are using Microsoft Edge you will need to click on Open Side Panel).
What happens when you log in?
While we are loggin you in, we are storing your authorization information locally under ~/.zephyr in your root directly. Whenever you want to clean up your local profile information (they are JWT claims for each of the project you deployed through Zephyr), you can enter your root directory in terminal and run:
1rm rf ~/.zephyr
Now you have created an account and the side panel is empty - hold up! We will get into how to use our dashboard in a bit. Let's deploy an app through Zephyr so you can see a live example of how to use our side panel.
INFO
Our chrome extension is only supported on Chromium based browsers. See a list of supported browser.