Skip to content
Back

Nextjs ISR (incremental static regeneration) is not working on appwrite sites?

  • 0
  • Sites
  • Web
charge
1 Sep, 2025, 11:51

i have a cached function and when i revalidate it using revalidateTag the cache gets revalidated but the static pages using that cached function do not get regenerated as they should be. do i need to add something in my nextjs config or in site settings? its working as expected when i run my application locally

TL;DR
Developers are experiencing issues with Nextjs ISR not working on Appwrite sites. Despite internal discussions, the problem hasn't been fixed yet. The issue is related to cached functions not regenerating static pages as expected. A premium upgrade offers prompt support, but the team is actively investigating the problem.
eldad
1 Sep, 2025, 19:39

share a link to your site, sites ID and project ID.

charge
2 Sep, 2025, 06:55

i setup an example website for demonstration heres the link: https://example-nextjs-app.appwrite.network/, site id: 68b68f54002813a4411d, project id: 68b68f250012b7afacc2. when you click revalidate the cached function gets revalidated and time changes but the static page does not appear to be regenerated so when you refresh you again see the old time not the time after revalidation.

here is the relevant part of code

TypeScript
// page.tsx

import { cachedFn } from "./actions";
import { Cc } from "./cc";

export default async function Home() {
  const time = await cachedFn();

  return (
    <>
      <p>hello world!</p>
      <p>time: {time.toString()}</p>
      <Cc />
    </>
  );
}

// cc.tsx

"use client";

import { useEffect } from "react";
import { cachedFn, revalidateFn } from "./actions";

export function Cc() {
  useEffect(() => {
    cachedFn().then((v) => console.log("time is", v.toString()));
  });

  return <button onClick={revalidateFn}>revalidate</button>;
}

// actions.ts

"use server";

import { revalidateTag, unstable_cache } from "next/cache";

export const cachedFn = unstable_cache(async () => new Date(), ["cachedFn"], {
  tags: ["cachedFn"],
});

export async function revalidateFn() {
  revalidateTag("cachedFn");
}
charge
3 Sep, 2025, 05:33

@eldad hello?

eldad
3 Sep, 2025, 10:49

For prompt support, you can upgrade to Cloud Pro and use our premium email support. For the actual topic - I messaged our team and they are looking into it.

charge
3 Sep, 2025, 10:50

ok thanks πŸ‘

charge
12 Sep, 2025, 18:25

hello @eldad it doesnt seem like the problem has been fixed sorry for pinging

D5
12 Sep, 2025, 22:23

[SOLVED] Nextjs ISR (incremental static regeneration) is not working on appwrite sites?

charge
13 Sep, 2025, 07:17

but this issue has not been solved yet πŸ€”

D5
13 Sep, 2025, 08:55

Nextjs ISR (incremental static regeneration) is not working on appwrite sites?

D5
13 Sep, 2025, 08:55

Sorry, I had read the opposite πŸ˜…

charge
25 Sep, 2025, 05:31

hello @eldad is this ever going to get fixed? its been a month almost

eldad
10 Oct, 2025, 10:35

To share an update. This has been discussed internally this week. We've agreed on a direction for how we're going to support this and I expect the implementation to not take too long. Basically we'll make sure relevant cache headers are supported and will introduce an API to purge cache from the Appwrite CDN.

charge
11 Oct, 2025, 16:11

amazing!

charge
2 Nov, 2025, 09:25

is this fixed yet?

charge
4 Dec, 2025, 12:43

its been 3 months and this still hasnt been fixed πŸ™

Reply

Reply to this thread by joining our Discord

Reply on Discord

Need support?

Join our Discord

Get community support by joining our Discord server.

Join Discord

Get premium support

Join Appwrite Pro and get email support from our team.

Learn more