Hi everyone,I hope you're doing well.
I'm currently working on a project where I'm using Next.js for the frontend and Appwrite for the backend. I've been exploring ways to optimize performance, and I'm particularly interested in leveraging Next.js caching to improve efficiency. Specifically, I'm looking for guidance on how to effectively combine Next.js caching strategies (such as Incremental Static Regeneration or Server-Side Rendering) with data fetched from Appwrite.
I'm aware that Next.js provides built-in caching mechanisms, but I'm unsure about the best practices for integrating them with data fetched from an external source like Appwrite. If anyone has experience or insights into how to achieve this, I would greatly appreciate any advice, code examples, or resources you could share. Additionally, if there are any potential challenges or considerations I should be aware of, I'd love to hear about them. Thank you in advance for your help and support!
**TLDR: How to set up appwrite database caching using nextjs inbuild-caching ** (PS : i'm using the appwrite-node sdk as on my server side of nextjs , not the appwrite client side sdk)
Here is how I've done, it (https://github.com/dishwasher-detergent/appwrite-nextjs-starter/blob/main/lib/db/index.ts). Let me know if this is kinda what you were thinking, also let me know if you think this sucks haha
so in short you just wrap the entire call of databases in unstable_cache?
Most of the call, you wouldn't wrap auth checks, but yes, and in post/put/delete calls you invalidate the cache to prevent stale data
hmm what about other ways of doing it like using "use cache" n stuff?
cause in the docs they mention it would be replaced in future versions by "use cache"
You can try that out but afaik that's only available in canary releases of nextjs
so it's subject to a lot of change without notice.
Appwrite has too built-in mechanisms
But server sided, instead of client
Sure but if you use nextjs cache it caches closer to the user wheres appwrite does not :P
Recommended threads
- Hi Appwrite Support Team,
Hi Appwrite Support Team, Project ID: 69a69f6f00113ed0e8e4 Region: San Francisco (sfo.cloud.appwrite.io) Issue: My Appwrite Functions are not executing proper...
- Retrieving Data From Backups
Hiya, I have a user requesting for data they accidentally deleted. I don't have document history built into my app. Is there a way to extract data from the auto...
- Paused project notification
Hi, how do I disable these notifications? I get them every week and they're starting to annoy me. I don't care that my project is paused.