blog: add atharva as author & nextjs article#2312
blog: add atharva as author & nextjs article#2312adityaoberai merged 10 commits intoappwrite:mainfrom
Conversation
appwrite.ioProject ID: Note Appwrite has a Discord community with over 16 000 members. |
adityaoberai
left a comment
There was a problem hiding this comment.
Mostly looks good, left some comments
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc
Outdated
Show resolved
Hide resolved
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc
Outdated
Show resolved
Hide resolved
|
|
||
| - If you’re using a different branch for your intended production website, choose the specific branch. | ||
| - If you’re using a monorepo, Sites might not automatically detect your application. In such cases, manually provide the root directory for your Next.js app that contains the Next.js configuration file. For example, if you’re using Turborepo, your Next.js app might be located inside one of the folders in the `apps` folder, so your root directory should be something like `./apps/web`. | ||
| - Most users don’t need to change the **Build settings**, although if you want to run different commands for installation and builds, you can configure those in this section. If you don’t know anything about this, it’s worth skipping this section altogether. |
There was a problem hiding this comment.
Let's mention the expected defaults as subpoints
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc
Outdated
Show resolved
Hide resolved
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc
Outdated
Show resolved
Hide resolved
WalkthroughAdds a new author profile page for Atharva Deosthale and a new blog post detailing deployment of a Next.js app to Appwrite Sites. Both are static Markdoc pages introducing content and metadata; no application logic or control flow changes. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
Tip 🔌 Remote MCP (Model Context Protocol) integration is now available!Pro plan users can now connect to remote MCP servers from the Integrations page. Connect with popular remote MCPs such as Notion and Linear to add more context to your reviews and chats. ✨ Finishing Touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Actionable comments posted: 3
♻️ Duplicate comments (1)
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc (1)
5-5: Confirm publication date before merge.Front matter date is 2025-08-28. If this should publish on Aug 27 as previously suggested, update accordingly; otherwise keep as-is for Aug 28. Be mindful of timezone when the site generates listings.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
⛔ Files ignored due to path filters (5)
static/images/avatars/atharva.pngis excluded by!**/*.pngstatic/images/blog/deploy-nextjs-app-to-appwrite-sites/connect-repo.pngis excluded by!**/*.pngstatic/images/blog/deploy-nextjs-app-to-appwrite-sites/cover.pngis excluded by!**/*.pngstatic/images/blog/deploy-nextjs-app-to-appwrite-sites/site-config.pngis excluded by!**/*.pngstatic/images/blog/deploy-nextjs-app-to-appwrite-sites/site-deployed.pngis excluded by!**/*.png
📒 Files selected for processing (4)
src/lib/layouts/Main.svelte(1 hunks)src/routes/blog/author/atharva/+page.markdoc(1 hunks)src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc(1 hunks)static/scripts/zoominfo.js(2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: build
- GitHub Check: tests
🔇 Additional comments (4)
static/scripts/zoominfo.js (2)
19-20: LGTM: fixes stray parenthesis in comma expression.Syntactic cleanup only; no behavior change.
36-40: LGTM: balanced closing and load handler still correct.Appending the script immediately if
document.readyState === 'complete', else onload, remains intact.src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc (2)
57-59: Defaults section added — looks good.The explicit defaults for install/build/output improve clarity and address prior feedback.
61-62: Good call-out on domains.Mentioning Appwrite Network subdomain first and custom domain later aligns with onboarding flow.
src/lib/layouts/Main.svelte
Outdated
| } | ||
|
|
||
| $: ($isHeaderHidden, updateSideNav()); | ||
| $: $isHeaderHidden, updateSideNav(); |
There was a problem hiding this comment.
🧹 Nitpick (assertive)
No behavior change; consider a clearer reactive effect.
Dropping the parentheses keeps the same semantics. For readability, consider an explicit effect that makes the dependency on $isHeaderHidden obvious.
- $: $isHeaderHidden, updateSideNav();
+ // Run whenever $isHeaderHidden changes
+ $: {
+ void $isHeaderHidden;
+ updateSideNav();
+ }📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| $: $isHeaderHidden, updateSideNav(); | |
| // Run whenever $isHeaderHidden changes | |
| $: { | |
| void $isHeaderHidden; | |
| updateSideNav(); | |
| } |
🤖 Prompt for AI Agents
In src/lib/layouts/Main.svelte around line 145, the current reactive statement
"$: $isHeaderHidden, updateSideNav();" is terse and unclear; change it to an
explicit reactive block that clearly declares the dependency, e.g. replace with
a block such as "$: { $isHeaderHidden; updateSideNav(); }" so the dependency on
$isHeaderHidden is obvious while preserving behavior.
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc
Outdated
Show resolved
Hide resolved
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc
Outdated
Show resolved
Hide resolved
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc
Outdated
Show resolved
Hide resolved
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc
Outdated
Show resolved
Hide resolved
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc
Outdated
Show resolved
Hide resolved
adityaoberai
left a comment
There was a problem hiding this comment.
Left a few final changes, otherwise the PR is good to go
….markdoc Co-authored-by: Aditya Oberai <adityaoberai1@gmail.com>
….markdoc Co-authored-by: Aditya Oberai <adityaoberai1@gmail.com>
….markdoc Co-authored-by: Aditya Oberai <adityaoberai1@gmail.com>
….markdoc Co-authored-by: Aditya Oberai <adityaoberai1@gmail.com>
There was a problem hiding this comment.
Actionable comments posted: 4
♻️ Duplicate comments (3)
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc (3)
16-16: Consistency: acronym expansions and hyphen usage.Apply:
-Appwrite Sites is a frontend hosting service that can help you deploy your Next.js (or any web framework) app in minutes with full RSC (React Server Components) and SSR (server‑side rendering) functionality. +Appwrite Sites is a frontend hosting service that can help you deploy your Next.js (or any web framework) app in minutes, with full RSC (React Server Components) and SSR (Server-Side Rendering) support.If the site style guide prefers sentence case for expansions, flip “Server-Side Rendering” to “server-side rendering” everywhere for consistency.
56-60: Present defaults as an info note; keep bullets lean.-- Most users don’t need to change the **Build settings**, although if you want to run different commands for installation and builds, you can configure those in this section. If you don’t know anything about this, it’s worth skipping this section altogether. - - The default build command for Next.js is `npm run build`. - - The default install command for Next.js is `npm install`. - - The default output directory for Next.js is `./.next`. +{% info title="Default build settings for Next.js" %} +- Build command: `npm run build` +- Install command: `npm install` +- Output directory: `./.next` +{% /info %}If product defaults differ from framework defaults, replace with the Appwrite Sites defaults.
61-61: Tone/clarity: domain guidance.-- Configure an Appwrite Network subdomain to get started. You can add a custom domain or use a new Appwrite Network domain once your app is deployed. +- Choose a domain: use an Appwrite Network subdomain now; add a custom domain later if needed.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: build
- GitHub Check: tests
🔇 Additional comments (2)
src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc (2)
2-10: Frontmatter: verify metadata values before merge.
- Confirm publish date 2025-08-28 is intended (time zone, scheduling).
- Ensure author slug "atharva" matches the author page path/slug.
- Validate category "tutorial" is a recognized category.
- Check cover image exists at the referenced path.
1-80: Solid addition overall.Clear steps, good screenshots, and helpful links. Once the minor edits above are addressed, this is good to ship.
| You just built your Next.js app with all the killer features you wanted. Now you want to put it out for the world to see. But you’re confused — “how do I do that?”. If you’re that person, this article is for you. | ||
|
|
||
| In this article, you will learn how to deploy your Next.js app completely free of cost. We will use Appwrite Sites to achieve that. Appwrite is an all-in-one open-source BaaS (backend as a service) that handles the backend part of your application so that you can focus on the app's core logic rather than unnecessary technical details. |
There was a problem hiding this comment.
🧹 Nitpick (assertive)
Tighten the intro and fix BaaS capitalization.
Apply:
-You just built your Next.js app with all the killer features you wanted. Now you want to put it out for the world to see. But you’re confused — “how do I do that?”. If you’re that person, this article is for you.
-
-In this article, you will learn how to deploy your Next.js app completely free of cost. We will use Appwrite Sites to achieve that. Appwrite is an all-in-one open-source BaaS (backend as a service) that handles the backend part of your application so that you can focus on the app's core logic rather than unnecessary technical details.
+You’ve built your Next.js app and want to share it with the world. Here’s how to deploy it for free on Appwrite Sites.
+
+Appwrite is an all-in-one, open-source Backend-as-a-Service (BaaS) that handles your backend so you can focus on core product logic.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| You just built your Next.js app with all the killer features you wanted. Now you want to put it out for the world to see. But you’re confused — “how do I do that?”. If you’re that person, this article is for you. | |
| In this article, you will learn how to deploy your Next.js app completely free of cost. We will use Appwrite Sites to achieve that. Appwrite is an all-in-one open-source BaaS (backend as a service) that handles the backend part of your application so that you can focus on the app's core logic rather than unnecessary technical details. | |
| You’ve built your Next.js app and want to share it with the world. Here’s how to deploy it for free on Appwrite Sites. | |
| Appwrite is an all-in-one, open-source Backend-as-a-Service (BaaS) that handles your backend so you can focus on core product logic. |
🤖 Prompt for AI Agents
In src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc around
lines 12-14, tighten the intro into two concise sentences and correct the BaaS
capitalization by referring to Appwrite as a "Backend-as-a-Service (BaaS)";
replace the current two-paragraph wording with a single short hook like "You
built your Next.js app — now let's deploy it." followed by a clear one-liner:
"This guide shows how to deploy your Next.js app for free using Appwrite Sites;
Appwrite is an open-source Backend-as-a-Service (BaaS) that handles your backend
so you can focus on app logic."
| Before you deploy your Next.js app, it’s essential to see if it builds successfully. Building is a process where Next.js bundles your app into files that can be run on a server and a browser, depending on your usage of SSR (server-side rendering). | ||
|
|
There was a problem hiding this comment.
🧹 Nitpick (assertive)
Minor wording: clarify SSR sentence and unify hyphen.
-Building is a process where Next.js bundles your app into files that can be run on a server and a browser, depending on your usage of SSR (server-side rendering).
+Building bundles your app into files that run on the server and the browser, depending on whether you use SSR (Server-Side Rendering).📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| Before you deploy your Next.js app, it’s essential to see if it builds successfully. Building is a process where Next.js bundles your app into files that can be run on a server and a browser, depending on your usage of SSR (server-side rendering). | |
| Before you deploy your Next.js app, it’s essential to see if it builds successfully. Building bundles your app into files that run on the server and the browser, depending on whether you use SSR (Server-Side Rendering). |
🤖 Prompt for AI Agents
In src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc around
lines 20 to 21, the sentence about SSR is unclear and the hyphenation is
inconsistent; reword the sentence to explicitly say "server-side rendering
(SSR)" and ensure hyphenation is consistent (use "server-side rendering" with
the hyphen and expand SSR on first use), e.g. replace the current clause with a
clearer one like "depending on whether you use server-side rendering (SSR) or
client-side rendering," so the meaning and hyphenation are unified.
|
|
||
|  | ||
|
|
||
| Click **Connect** against the desired GitHub repository. The Next.js logo should be the icon of any valid Next.js app. |
There was a problem hiding this comment.
🧹 Nitpick (assertive)
Avoid overpromising framework icon detection.
-Click **Connect** against the desired GitHub repository. The Next.js logo should be the icon of any valid Next.js app.
+Click **Connect** for the desired repository. If detected, a Next.js logo appears for Next.js apps.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| Click **Connect** against the desired GitHub repository. The Next.js logo should be the icon of any valid Next.js app. | |
| Click **Connect** for the desired repository. If detected, a Next.js logo appears for Next.js apps. |
🤖 Prompt for AI Agents
In src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc around
line 46, the sentence "Click **Connect** against the desired GitHub repository.
The Next.js logo should be the icon of any valid Next.js app." overpromises
automatic framework icon detection; reword to a neutral, accurate statement such
as "Click **Connect** for the desired GitHub repository; if Appwrite detects a
Next.js project the repository icon may show the Next.js logo," or "Click
**Connect** for the desired GitHub repository. The repository icon may show the
Next.js logo if Appwrite recognizes a Next.js app." Replace the original line
with one of these neutral alternatives.
| {% info title="Note on environment variables" %} | ||
| In Next.js, public environment variables start with `NEXT_PUBLIC_`. These environment variables are accessible in the browser environment, so don’t store your sensitive API keys in a variable that starts with that prefix. | ||
| {% /info %} |
There was a problem hiding this comment.
🧹 Nitpick (assertive)
Strengthen env var guidance: server-only secrets.
{% info title="Note on environment variables" %}
In Next.js, public environment variables start with `NEXT_PUBLIC_`. These environment variables are accessible in the browser environment, so don’t store your sensitive API keys in a variable that starts with that prefix.
+Server-only secrets must not be prefixed with `NEXT_PUBLIC_` and are available only in server code (API routes, Route Handlers, Server Components, or `getServerSideProps`).
{% /info %}📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| {% info title="Note on environment variables" %} | |
| In Next.js, public environment variables start with `NEXT_PUBLIC_`. These environment variables are accessible in the browser environment, so don’t store your sensitive API keys in a variable that starts with that prefix. | |
| {% /info %} | |
| {% info title="Note on environment variables" %} | |
| In Next.js, public environment variables start with `NEXT_PUBLIC_`. These environment variables are accessible in the browser environment, so don’t store your sensitive API keys in a variable that starts with that prefix. | |
| Server-only secrets must not be prefixed with `NEXT_PUBLIC_` and are available only in server code (API routes, Route Handlers, Server Components, or `getServerSideProps`). | |
| {% /info %} |
🤖 Prompt for AI Agents
In src/routes/blog/post/deploy-nextjs-app-to-appwrite-sites/+page.markdoc around
lines 63 to 65, the current note only warns about NEXT_PUBLIC_ prefixed
variables but doesn't instruct how to store and use server-only secrets; update
the guidance to explicitly instruct readers to never prefix secrets with
NEXT_PUBLIC_, store them in server-only environment files (e.g., .env.local or
platform secret manager), access them only from server-side code (API routes,
server components, getServerSideProps) or via Appwrite server SDKs/functions,
and mention rotating/limiting scope for long-lived keys.

Summary by CodeRabbit