fix: add install phase with --no-frozen-lockfile for linux native bindings
rolldown requires platform-specific bindings (@rolldown/binding-linux-x64-gnu) that are absent from a lockfile generated on a different OS. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
44
README.md
44
README.md
@@ -1,18 +1,40 @@
|
|||||||
# Vue 3 + TypeScript + Vite
|
# miniminu - the milestone reminder
|
||||||
|
|
||||||
This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
|
A minimal countdown timer app. Set a target date and watch the time remaining displayed in years, months, days, hours, minutes, and seconds.
|
||||||
|
|
||||||
## Recommended IDE Setup
|
## Features
|
||||||
|
|
||||||
- [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).
|
- Countdown to any target date
|
||||||
|
- Optional project title (shown as page title)
|
||||||
|
- Shareable URL — state is stored in query params (`?project=...&target=...`)
|
||||||
|
- Responsive: form controls are hidden on small screens, visible on 600px+
|
||||||
|
|
||||||
## Type Support For `.vue` Imports in TS
|
## Usage
|
||||||
|
|
||||||
TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) to make the TypeScript language service aware of `.vue` types.
|
Open the app in a browser. On a wide enough screen, fill in the **Title** and **Target date** fields, then click **copy url** to share a link with the countdown pre-configured.
|
||||||
|
|
||||||
If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps:
|
URL params:
|
||||||
|
- `project` — display name / page title
|
||||||
|
- `target` — target date in `YYYY-MM-DD` format
|
||||||
|
|
||||||
1. Disable the built-in TypeScript Extension
|
## Development
|
||||||
1. Run `Extensions: Show Built-in Extensions` from VSCode's command palette
|
|
||||||
2. Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)`
|
```bash
|
||||||
2. Reload the VSCode window by running `Developer: Reload Window` from the command palette.
|
pnpm install
|
||||||
|
pnpm dev
|
||||||
|
```
|
||||||
|
|
||||||
|
## Build
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pnpm build
|
||||||
|
pnpm preview
|
||||||
|
```
|
||||||
|
|
||||||
|
## Tech stack
|
||||||
|
|
||||||
|
- [Vue 3](https://vuejs.org/) with `<script setup>` SFCs
|
||||||
|
- [TypeScript](https://www.typescriptlang.org/)
|
||||||
|
- [Vite 8](https://vite.dev/)
|
||||||
|
- [Luxon](https://moment.github.io/luxon/) for date/time calculations
|
||||||
|
- [VueUse](https://vueuse.org/) for URL search params and title sync
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
[phases.setup]
|
[phases.setup]
|
||||||
nixPkgs = ["nodejs_23", "pnpm"]
|
nixPkgs = ["nodejs_23", "pnpm"]
|
||||||
|
|
||||||
|
[phases.install]
|
||||||
|
cmds = ["pnpm install --no-frozen-lockfile"]
|
||||||
|
|
||||||
[phases.build]
|
[phases.build]
|
||||||
cmds = ["pnpm build"]
|
cmds = ["pnpm build"]
|
||||||
|
|||||||
Reference in New Issue
Block a user