We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 4b3edc4 commit f814107Copy full SHA for f814107
app/actions.js
@@ -1,5 +1,7 @@
1
'use server'
2
3
+import('harperdb');
4
+
5
export async function listDogs() {
6
const dogs = [];
7
for await (const dog of tables.Dog.search()) {
app/dogs/[id]/page.js
@@ -13,6 +13,7 @@ export default async function Dog({ params }) {
13
return (
14
<section>
15
<h1>{dog.name}</h1>
16
+ <p>Breed: {dog.get('breed')}</p>
17
<p>Woof!</p>
18
</section>
19
)
app/page.js
@@ -1,8 +1,10 @@
import Link from "next/link";
+import ClientComponent from "./client-component";
export default async function Page() {
+ <ClientComponent/>
8
<p>Check out the <Link href="/dogs">Dogs</Link> page to get started.</p>
9
10
config.yaml
@@ -1,9 +1,7 @@
graphqlSchema:
files: '*.graphql'
+jsResource:
+ files: './resources.js'
'@harperdb/nextjs':
package: '@harperdb/nextjs'
- prebuilt: false
- dev: true
- debug: true
- port: 3000
files: '/*'
next.config.js
@@ -1,7 +1,11 @@
/** @type {import('next').NextConfig} */
const nextConfig = {
- experimental: {
- workerThreads: true
+ webpack: (config) => {
+ config.externals.push({
+ "harperdb": "commonjs harperdb"
+ })
+ return config;
}
11
package-lock.json
package.json
@@ -3,13 +3,13 @@
"version": "0.1.0",
"private": true,
"scripts": {
- "dev": "next dev",
- "build": "next build",
- "start": "harperdb run ./",
+ "dev": "harperdb-nextjs dev",
+ "build": "harperdb-nextjs build",
+ "start": "harperdb-nextjs start",
"lint": "next lint"
},
"dependencies": {
12
- "@harperdb/nextjs": "file://Users/ethan/dev/harperdb/nextjs",
+ "@harperdb/nextjs": "file:../nextjs",
"harperdb": "^4.3.21",
"next": "^14.2.5",
"react": "^18",
resources.js
@@ -0,0 +1,18 @@
+const dogs = [
+ { id: "0", name: "Lincoln", breed: "Shepherd" },
+ { id: "1", name: "Max", breed: "Cocker Spaniel" },
+ { id: "2", name: "Bella", breed: "Lab" },
+ { id: "3", name: "Charlie", breed: "Great Dane" },
+ { id: "4", name: "Lucy", breed: "Newfoundland" },
+ { id: "5", name: "Cooper", breed: "Pug" },
+ { id: "6", name: "Daisy", breed: "Bull Dog" },
+ { id: "7", name: "Rocky", breed: "Akita" },
+ { id: "8", name: "Luna", breed: "Wolf" },
+ { id: "9", name: "Buddy", breed: "Border Collie" },
+ { id: "10", name: "Bailey", breed: "Golden Retriever" },
+ { id: "11", name: "Sadie", breed: "Belgian Malinois" },
+]
+for (const dog of dogs) {
+ tables.Dog.put(dog)
+}
0 commit comments