# Missing dependency in Tutorial 3 - Developing a simple interface-only app

**URL:** <https://help.nextcloud.com/t/missing-dependency-in-tutorial-3-developing-a-simple-interface-only-app/235025>\
**Category:** 💻 Development\
**Tags:** tutorial, nc31\
**Created:** [October 31, 2025, 5:27pm UTC](https://help.nextcloud.com/t/missing-dependency-in-tutorial-3-developing-a-simple-interface-only-app/235025 "2025-10-31T17:27:11Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![halibut](https://help.nextcloud.com/letter_avatar/halibut/32/5_5575768a8748004e209b776fc1b2916d.png) [@halibut](https://help.nextcloud.com/u/halibut)\
**Post date:** [October 31, 2025, 5:27pm UTC](https://help.nextcloud.com/t/missing-dependency-in-tutorial-3-developing-a-simple-interface-only-app/235025/1 "2025-10-31T17:27:11Z")

</div>

Hello,

[Tutorial 3 - Developing a simple interface-only app](https://cloud.nextcloud.com/s/iyNGp8ryWxc7Efa?dir=%252F3%2520Developing%2520a%2520simple%2520interface-only%2520app&editing=false&openfile=true) is currently broken in Nextcloud 31.

At step 5, `npm run dev` fails with this error

> error during build:  
> [vite]: Rollup failed to resolve import “@nextcloud/paths” from “/home/user/public\_html/nextcloud/apps-extra/catgifs/node\_modules/@nextcloud/dialogs/dist/chunks/index-hZPKu-D6.mjs”.  
> This is most likely unintended because it can break your application at runtime.  
> If you do want to externalize this module explicitly add it to  
> build.rollupOptions.external

It seems `@nextcloud/paths` is missing when we add dependencies to package.json at step 2. The last command should probably be :

```auto
npm i --save @nextcloud/axios @nextcloud/dialogs @nextcloud/initial-state @nextcloud/router @nextcloud/paths

```

At least, I tried this and then building worked. 🙂

```auto
npm run dev

> catgifs@1.0.0 dev
> vite --mode development build

Building catgifs for development

(!) build.outDir must not be the same directory of root or a parent directory of root as this could cause Vite to overwriting source files with build outputs.

vite v7.1.12 building for development...
✓ 1144 modules transformed.
./css/catgifs-main.css 0.08 kB │ gzip: 0.10 kB
./css/main-_2--zc7X.chunk.css 327.10 kB │ gzip: 38.68 kB
./js/catgifs-main.mjs 1,771.17 kB │ gzip: 386.87 kB │ map: 4,598.70 kB
✓ built in 5.95s

```

---

<div class="post-metadata">

**Author:** ![christianlupus](https://help.nextcloud.com/user_avatar/help.nextcloud.com/christianlupus/32/22699_2.png) [@christianlupus](https://help.nextcloud.com/u/christianlupus)\
**Post date:** [October 31, 2025, 9:10pm UTC](https://help.nextcloud.com/t/missing-dependency-in-tutorial-3-developing-a-simple-interface-only-app/235025/2 "2025-10-31T21:10:00Z")

</div>

Ping @edward

---

<div class="post-metadata">

**Author:** ![edward](https://help.nextcloud.com/user_avatar/help.nextcloud.com/edward/32/63680_2.png) [@edward](https://help.nextcloud.com/u/edward)\
**Post date:** [November 4, 2025, 11:05pm UTC](https://help.nextcloud.com/t/missing-dependency-in-tutorial-3-developing-a-simple-interface-only-app/235025/3 "2025-11-04T23:05:37Z")

</div>

While I’m not experiencing the same error on my end, I guess it wouldn’t hurt to explicitly declare the package as an additional dependency anyway. It has now been added to the tutorial, thanks for reporting! 👍
