-
Notifications
You must be signed in to change notification settings - Fork 297
New faq blogs #2476
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
New faq blogs #2476
Changes from all commits
Commits
Show all changes
18 commits
Select commit
Hold shift + click to select a range
07433eb
Update +page.markdoc
Veera-mulge 8efab0e
Create +page.markdoc
Veera-mulge f360879
Update +page.markdoc
Veera-mulge b55310c
Create +page.markdoc
Veera-mulge 5e474a3
Update +page.markdoc
Veera-mulge b171114
Create images
Veera-mulge 9f12240
Add files via upload
Veera-mulge 0adb8d2
Create images
Veera-mulge cce8504
Add files via upload
Veera-mulge 2915ffd
Delete static/images/blog/best-push-notification-strategies/images
Veera-mulge bce7c9d
Delete static/images/blog/best-free-static-website-hosting/images
Veera-mulge de7a1b2
Update +page.markdoc
Veera-mulge 1f8fb49
Update +page.markdoc
Veera-mulge 2596d5b
Update +page.markdoc
Veera-mulge 86e9bc6
Update +page.markdoc
Veera-mulge fcc8435
Update +page.markdoc
Veera-mulge 36ef28a
Update +page.markdoc
Veera-mulge 28791bc
Apply suggestions from code review
atharvadeosthale File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
207 changes: 207 additions & 0 deletions
207
src/routes/blog/post/best-free-static-website-hosting/+page.markdoc
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,207 @@ | ||
| --- | ||
| layout: post | ||
| title: "6 best free static website hosting services compared" | ||
| description: See how Vercel, Render, Netlify, GitHub Pages, Cloudflare Pages and Appwrite Sites compare on features, pricing, and ease of use. | ||
| cover: /images/blog/best-free-static-website-hosting/cover.png | ||
| date: 2025-10-04 | ||
| timeToRead: 10 | ||
| author: veeresh-mulge | ||
| unlisted: true | ||
| category: product | ||
| --- | ||
|
|
||
| If you’ve ever built a static website, you know the feeling of getting it ready to go live and then asking yourself, “Where do I host this… without paying a dime?” The good news is that there are plenty of platforms today that let you publish static websites for free. Whether it’s a personal portfolio, a side project, or an MVP you’re testing, free static site hosting has become the default way to get started fast. | ||
|
|
||
| But with so many [hosting services](/products/sites) available, choosing the right one can get confusing. So instead of leaving you to dig through multiple docs and pricing pages, we put together this simple comparison of the 6 best free static hosting providers. | ||
|
|
||
| Here’s a quick table to give you the overview before we dive into each service: | ||
|
|
||
| | Hosting Service | Free Plan | Deployments | Rendering support | Custom Domains | Auth, DB, storage integration | Best feature | | ||
| | --- | --- | --- | --- | --- | --- | --- | | ||
| | **Vercel** | Hobby (free) | Auto from Git, instant previews | Static + SSR | Yes | No (external required) | Optimized for modern frameworks (Next.js) | | ||
| | **Render** | Free static sites | Git-based | Static only | Yes | No (external required) | Simple, reliable global CDN | | ||
| | **Netlify** | Starter (free forever) | Git deploys, preview builds | Static (SSR via edge functions) | Yes | No (external required) | Built-in serverless functions + extras | | ||
| | **GitHub Pages** | Free for public repos | Push to repo, auto-build with Jekyll | Static only | Yes | No (external required) | Zero-cost hosting tied to GitHub | | ||
| | **Clouflare Pages** | Yes | Git-based auto-deploys, CLI | Static + SSR | Yes | No (external required) | Deep integration with Cloudflare’s global edge network | | ||
| | **Appwrite Sites** | Free | Git-based auto-deploys, CLI, manual upload | Static + SSR | Yes | Yes | All-in-one: hosting + backend services | | ||
|
|
||
| # Appwrite Sites | ||
|
|
||
| [Appwrite Sites](/products/sites) is designed to go beyond traditional free static site hosting. Alongside static and server-side rendering, it integrates backend services such as databases, authentication, storage, and serverless functions. This makes it more than just an HTML hosting service, it’s an all-in-one developer platform that allows you to build, deploy, and scale full-stack applications without juggling multiple providers. | ||
|
|
||
| ## Key features of Appwrite Sites | ||
|
|
||
| - Supports [static](https://appwrite.io/docs/products/sites/rendering/static) and [server-side](https://appwrite.io/docs/products/sites/rendering/ssr) rendering (Next.js, Nuxt, Astro, Remix, etc.) | ||
| - [Git-based deployments](https://appwrite.io/docs/products/sites/deployments#create-deployment) with previews | ||
| - [Global CDN](https://appwrite.io/docs/products/network/cdn) with SSL and DDoS protection | ||
| - Built-in backend services: auth, database, functions, storage | ||
|
|
||
| ## Pricing of Appwrite Sites | ||
|
|
||
| - Open source and self-hostable | ||
| - **Cloud option**: Free tier available, with paid Pro plan starting at $25/month. | ||
|
|
||
| ## Pros and cons of Appwrite Sites | ||
|
|
||
| | Pros | Cons | | ||
| | --- | --- | | ||
| | All-in-one: frontend + backend in one ecosystem | Ecosystem still newer compared to incumbents | | ||
| | Flexible support for static and SSR | Pricing model for scaling still maturing | | ||
| | Open source foundation with no vendor lock-in | Fewer third-party integrations so far | | ||
|
|
||
| # Vercel | ||
|
|
||
| [Vercel](https://vercel.com/) is a favourite among frontend developers because it makes it simple to host a static website connected to your Git workflow. Every push triggers an instant deploy, and every pull request gets its own preview URL. | ||
|
|
||
| ## Key features of Vercel | ||
|
|
||
| - Git integration with auto-deploys and preview URLs | ||
| - Global CDN and edge network | ||
| - Serverless functions support | ||
| - Edge and Node runtime support | ||
| - Framework-optimized especially for Next.js. | ||
|
|
||
| ## Pricing of Vercel | ||
|
|
||
| - **Hobby (Free)**: 1M requests/month, 100 GB bandwidth, limited serverless usage | ||
| - **Pro**: starts at $20 per user/month with higher limits | ||
|
|
||
| ## Pros and cons of Vercel | ||
|
|
||
| | Pros | Cons | | ||
| | --- | --- | | ||
| | Excellent developer experience | Quite costly when compared to other competitors | | ||
| | Great for modern frontend frameworks | Limited backend support | | ||
| | Instant previews and rollbacks | Overages can get costly | | ||
|
|
||
| # Render | ||
|
|
||
| [Render](https://render.com/) is often overlooked, but it’s a clean option for static site hosting, free of complexity. You connect your repo, and every commit deploys automatically to a global CDN. | ||
|
|
||
| ## Key features of Render | ||
|
|
||
| - Git-based deployments with auto-builds | ||
| - Global CDN with caching and HTTPS | ||
| - Custom domains with automatic SSL | ||
| - Preview builds for pull requests | ||
|
|
||
| ## Pricing of Render | ||
|
|
||
| - **Free static sites**: 100 GB/month bandwidth, 750 build minutes/month | ||
| - Paid plans scale with bandwidth and build usage | ||
|
|
||
| ## Pros and cons of Render | ||
|
|
||
| | Pros | Cons | | ||
| | --- | --- | | ||
| | Straightforward and reliable for static hosting | Bandwidth and build limits on free plan | | ||
| | Easy Git workflow | No guarantees of “always-on” behaviour for dynamic/web services on the free tier | | ||
| | Custom domains included even on free plan | Lacks advanced serverless features | | ||
|
|
||
| # Netlify | ||
|
|
||
| [Netlify](https://www.netlify.com/) set the standard for modern free hosting static website platforms. It goes beyond simple HTML hosting with useful extras like form handling, functions, and identity. | ||
|
|
||
| ## Key features of Netlify | ||
|
|
||
| - Git-based continuous deployment | ||
| - Serverless functions and edge functions | ||
| - Previews, rollbacks, and global CDN | ||
| - Built-in extras: form handling, identity, analytics | ||
|
|
||
| ## Pricing of Netlify | ||
|
|
||
| - **Starter (Free forever)**: 100 GB bandwidth, 300 build minutes, 125k serverless function calls | ||
| - **Pro**: $19 per user/month with larger limits and team features | ||
|
|
||
| ## Pros and cons of Netlify | ||
|
|
||
| | Pros | Cons | | ||
| | --- | --- | | ||
| | Very generous free tier | Build minutes and bandwidth can run out fast | | ||
| | Built-in extras reduce need for third-party tools | Sites may pause when limits are exceeded | | ||
| | One of the most popular and battle-tested platforms | Pricing can get complex at scale | | ||
|
|
||
| # GitHub Pages | ||
|
|
||
| If all you need is **free static webpage hosting**, [GitHub Pages](https://docs.github.com/en/pages) is the simplest choice. You push your site to a repository and it’s live. It’s great for documentation, blogs, and personal projects. | ||
|
|
||
| ## Key features of GitHub Pages | ||
|
|
||
| - Free hosting directly from GitHub repos | ||
| - Built-in Jekyll support for static site builds | ||
| - Free HTTPS and custom domains | ||
| - Simple workflow tied to commits | ||
|
|
||
| ## Pricing of GitHub Pages | ||
|
|
||
| - **Free** for public repositories | ||
| - Requires a paid GitHub plan for private repos | ||
|
|
||
| ## Pros and cons of GitHub Pages | ||
|
|
||
| | Pros | Cons | | ||
| | --- | --- | | ||
| | Truly free and reliable | Static-only, no backend support | | ||
| | Easy to use for docs and portfolios | Public repo requirement on free plan | | ||
| | Integrated into GitHub’s workflow | No request logging, analytics, rollbacks, or deployment management. | | ||
|
|
||
| # Cloudflare Pages | ||
|
|
||
| [Cloudflare Pages](https://pages.cloudflare.com/) is a relatively newer option, but has grown fast thanks to Cloudflare’s global infrastructure. It provides free, globally distributed static hosting with Git integration and the ability to run dynamic code through **Cloudflare Workers**. | ||
|
|
||
| ## Key features of Cloudflare Pages | ||
|
|
||
| - Git-based deployments with preview builds | ||
| - Global CDN with Cloudflare’s edge network | ||
| - Custom domains with free SSL | ||
| - Integration with Cloudflare Workers for SSR and dynamic functionality | ||
| - Edge Functions for APIs and personalization | ||
|
|
||
| ## Pricing of Cloudflare Pages | ||
|
|
||
| - **Free**: 500 builds/month, unlimited requests, 100 custom domains | ||
| - **Paid Pro plan**: $20/month for 5k builds/month, higher concurrency, and Workers KV/Durable Objects access | ||
|
|
||
| ## Pros and cons of Cloudflare Pages | ||
|
|
||
| | Pros | Cons | | ||
| | --- | --- | | ||
| | Global edge network ensures fast performance worldwide | Build concurrency and Workers limits on free plan | | ||
| | Deep integration with Cloudflare services (DNS, Workers, KV, R2, etc.) | Requires familiarity with Cloudflare ecosystem | | ||
| | Generous free tier with unlimited requests | More setup needed compared to plug-and-play hosts like Netlify | | ||
|
|
||
|
|
||
| # FAQ | ||
|
|
||
| **1. What is the best open source alternative to Vercel?** | ||
|
|
||
| Appwrite Sites is a strong open source alternative to Vercel. Unlike most static site hosts, it combines static and [server-side rendering](/docs/products/sites/rendering/ssr) with built-in backend services such as [authentication](/docs/products/auth), [databases](/docs/products/databases), and serverless functions. This makes it ideal for developers who want more control without vendor lock-in. | ||
|
|
||
| **2. Can I host a static website with a secure custom domain using Appwrite?** | ||
|
|
||
| Yes. Appwrite Sites supports [custom domains](/docs/products/sites/domains) with free SSL certificates. You can deploy your static or SSR site and serve it securely over HTTPS, all managed through the Appwrite dashboard. | ||
|
|
||
| **3. Does Appwrite offer enterprise support plans?** | ||
|
|
||
| Yes. Appwrite provides enterprise-grade support, including SLAs, [security](/docs/advanced/security) compliance, and dedicated assistance for larger teams and organizations building critical applications. | ||
|
|
||
| **4. What makes Appwrite different from Firebase or Netlify?** | ||
|
|
||
| While Firebase and Netlify focus either on backend services or frontend hosting, Appwrite combines both. You get static site hosting, server-side rendering, databases, authentication, storage, and functions in one open source platform. | ||
|
|
||
| **5. Can I deploy a React app with backend services in Appwrite?** | ||
|
|
||
| Absolutely. You can deploy your [React frontend](/docs/products/sites/quick-start/react) with Appwrite Sites and connect it directly to Appwrite’s backend services, such as database, authentication, and storage. This gives you a full-stack setup without relying on multiple providers. | ||
|
|
||
| **6. How does Appwrite compare to Render, Netlify, and Vercel?** | ||
|
|
||
| Render and Netlify provide solid **free static site hosting**, while Vercel is optimized for frontend frameworks like Next.js. Appwrite Sites goes further by combining hosting with backend services, making it more versatile for teams building full-stack applications. | ||
|
|
||
| **7. Can I use GitHub Actions to deploy to Appwrite Sites?** | ||
|
|
||
| Not directly. While Appwrite integrates with GitHub repositories for [automatic deployments](/docs/products/sites), GitHub Actions do not work with Sites out of the box today. Instead, you can connect your GitHub repo directly in the Appwrite console, and every push will trigger a deployment automatically. This gives you the benefits of continuous deployment without having to manually configure GitHub Actions. | ||
|
|
||
| **8. Does Appwrite Sites support preview deployments like Vercel and Netlify?** | ||
|
|
||
| Yes. Appwrite Sites offers [preview deployments](/docs/products/sites/previews) for every pull request or branch. This means that whenever you push a new feature or bug fix, Appwrite automatically creates a live preview URL. Your team can test the changes in a production-like environment before merging, making collaboration faster and safer. | ||
99 changes: 99 additions & 0 deletions
99
src/routes/blog/post/best-push-notification-strategies/+page.markdoc
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,99 @@ | ||
| --- | ||
| layout: post | ||
| title: "Push notifications 101: Best strategies to engage and retain users" | ||
| description: Learn how you can leverage push notifications for improved user engagement. | ||
| cover: /images/blog/best-push-notification-strategies/cover.png | ||
| date: 2025-10-04 | ||
| timeToRead: 10 | ||
| author: veeresh-mulge | ||
| unlisted: true | ||
| category: product | ||
| --- | ||
|
|
||
| Ever downloaded an app, used it once, and then completely forgot about it? You’re not alone; most users churn within days if they don’t see immediate value. That’s where push notifications come in. Done right, they’re not just those little pop-ups that interrupt your screen but can be powerful nudges that can bring users back, guide them through the product, and even turn casual sign-ups into loyal advocates. | ||
|
|
||
| In this guide, we’ll explain everything you need to know about push notifications, highlight best practices, and show you how Appwrite makes it simple for developers to set up reliable, personalized notifications. | ||
|
|
||
| # tl;dr | ||
|
|
||
| [Push notifications](/docs/products/messaging) help re-engage users when timed and personalized well. With Appwrite, you can send mobile and web notifications through [Apple Push Notification service(APNs)](/docs/products/messaging/apns) or [Firebase Cloud Messaging(FCM)](/docs/products/messaging/fcm), target users by topics or IDs, and set it all up in just four steps. | ||
|
|
||
| # How push notifications work (and why they matter) | ||
|
|
||
| Push notifications are simple: your app sends a small message to a device through a provider’s service (like APNs for iOS or FCM for Android), and that message shows up instantly on the user’s screen. The real value is in the timing and relevance. Notifications are the bridge between your product and a user who might otherwise forget you exist. | ||
|
|
||
| Why they matter is straightforward: retention. Most apps lose the majority of users within the first few days. [Push notifications](/docs/products/messaging/send-push-notifications), when done right, are a gentle way to bring them back, remind them of value, or nudge them toward the next step in their journey. | ||
|
|
||
| # 4 strategies to keep users engaged | ||
|
|
||
| 1. Personalize the message | ||
|
|
||
| A generic “Come back!” rarely works. Tie your notification to user behaviour: “Your order is on the way” or “You left something in your cart.” When the message feels relevant, users are far more likely to engage. | ||
|
|
||
| 2. Respect frequency | ||
|
|
||
| The quickest way to lose trust is to overdo it. Daily blasts might seem like engagement, but they often lead to uninstalls. A thoughtful cadence, only when the message adds real value, keeps users interested without pushing them away. | ||
|
|
||
| 3. Use timing to your advantage | ||
|
|
||
| Notifications land best when they align with context. A fitness app reminder in the morning feels helpful. The same nudge at midnight? Annoying. Matching delivery times to user habits goes a long way in building positive engagement. | ||
|
|
||
| 4. Segment your users | ||
|
|
||
| Not every user wants the same message. Segment by region, preferences, or context to keep notifications relevant. A promo for a local event makes sense only if the user is nearby, while a global update can go to everyone. Smart segmentation helps you avoid noise and keeps communication personal. | ||
|
|
||
|
|
||
| # FAQ | ||
|
|
||
| 1. **What are push notifications?** | ||
|
|
||
| Push notifications are short messages sent from your app to a user’s device, even when the app isn’t open. They show up on the lock screen or browser, giving you a direct way to grab attention. At their best, they’re quick nudges that remind users of something useful, like a delivery update or a new feature worth trying. | ||
|
|
||
| 2. **Does Appwrite support push notifications to different platforms?** | ||
|
|
||
| Yes. With Appwrite, you can send both **mobile push notifications** (iOS and Android) and **web push notifications**. You can also target by **topics** (groups of users) or individual **user IDs**, giving you flexibility to broadcast updates or send highly personalized messages. | ||
|
|
||
| 3. **How does Appwrite handle push notifications compared to Firebase?** | ||
|
|
||
| Firebase Cloud Messaging (FCM) is still required for Android push notifications, since that’s how messages reach devices on that platform. The difference is in how you work with it. With Firebase, you’re tied to Google’s ecosystem and usage-based pricing that can grow quickly as you scale. | ||
|
|
||
| Appwrite takes a developer-first approach. You still configure APNs (for Apple) and FCM (for Android/Web), but once connected, Appwrite’s SDKs handle the complexity for you. Instead of writing custom logic for tokens, segmentation, or scheduling, you use a consistent API across platforms. | ||
|
|
||
| And you get the freedom to choose how you run it: self-host for full control, or use **Appwrite Cloud** for a managed experience that removes the hassle of setup and maintenance. Either way, you get reliable push notifications without vendor lock-in, plus the simplicity of Appwrite’s unified developer experience. | ||
|
|
||
| 4. **Does Appwrite support targeting users or groups with notifications?** | ||
|
|
||
| It does. Appwrite lets you define [topics](/docs/products/messaging/topics) and [targets](/docs/products/messaging/targets), so you can send messages to specific groups (like “premium users” or “sports fans”) or to individuals. This makes it easy to build personalized campaigns without writing complex custom logic. | ||
|
|
||
| 5. **Which providers does Appwrite support for push notifications?** | ||
|
|
||
| Appwrite lets you connect with the major push services directly: | ||
|
|
||
| - **APNs** – Apple’s Push Notification service, used to send notifications to iOS and other Apple devices. | ||
| - **FCM** – Firebase Cloud Messaging, which works across Android, iOS, and the web. | ||
|
|
||
| Once you configure one of these providers, Appwrite handles the rest, so you can send notifications from a single platform without juggling separate integrations. | ||
|
|
||
| 6. **How easy is it to set up notifications in Appwrite?** | ||
|
|
||
| If you’re already using Appwrite, setting up notifications is straightforward. You can configure your project, connect your app to the supported platforms (APNs, FCM), and start sending with just a few lines of code. | ||
|
|
||
| 7. **Is Appwrite a good fit for enterprises that need push notifications?** | ||
|
|
||
| Yes. Enterprises often need more than just sending messages. They care about **scalability, compliance, and control**. | ||
|
|
||
| With Appwrite, you can self-host to keep everything in your own infrastructure, or use [Appwrite Cloud](https://cloud.appwrite.io/console/) for a fully managed setup. | ||
|
|
||
| Either way, you get support for APNs and FCM, user targeting, and the flexibility to integrate notifications with authentication, databases, hosting, and other backend services. That means less vendor sprawl and more confidence in meeting enterprise requirements. | ||
|
|
||
| 8. **How do I send push notifications with Appwrite?** | ||
|
|
||
| You can get started in just four steps: | ||
|
|
||
| 1. **Add a provider-** Configure APNs (Apple) or FCM (Android/Web). | ||
| 2. **Register targets-** Your app collects device tokens and registers them with Appwrite. | ||
| 3. **Request permissions-** Make sure users grant notification permissions. | ||
| 4. **Send a message-** Create and deliver your push notification via the Appwrite Console or SDK. | ||
|
|
||
| For the full setup guide, check the [Appwrite Push Notification docs](/docs/products/messaging/send-push-notifications). | ||
|
|
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.