Merge branch 'main' into feat-add-messaging-products-section

This commit is contained in:
Torsten Dittmann
2024-07-04 16:45:45 +02:00
committed by GitHub
12 changed files with 217 additions and 43 deletions

View File

@@ -1,8 +1,7 @@
<script lang="ts">
import { toScale, type Scale } from '$lib/utils/toScale';
import { spring, type AnimationListOptions, type SpringOptions } from 'motion';
import { animation, createScrollHandler, scroll, type Animation } from '.';
import { toScale, type Scale } from '$lib/utils/toScale';
import { browser } from '$app/environment';
import { GITHUB_STARS } from '$lib/constants';
const springOptions: SpringOptions = { stiffness: 58.78, mass: 1, damping: 17.14 };
@@ -22,7 +21,11 @@
}[] = [
{
mobile: {
main: animation('#oss-discord', { x: 0, y: 0, rotate: 1 }, animationOptions),
main: animation(
'#oss-discord',
{ x: 0, y: [1200, 0], rotate: 1 },
animationOptions
),
reversed: animation('#oss-discord', { y: 1200, x: 0, rotate: 1 }, animationOptions)
},
desktop: {
@@ -40,7 +43,11 @@
},
{
mobile: {
main: animation('#oss-github', { x: 0, y: -10, rotate: -2 }, animationOptions),
main: animation(
'#oss-github',
{ x: 0, y: [1200, -10], rotate: -2 },
animationOptions
),
reversed: animation('#oss-github', { y: 1200, x: 10, rotate: -2 }, animationOptions)
},
desktop: {
@@ -58,7 +65,11 @@
},
{
mobile: {
main: animation('#oss-twitter', { x: 0, y: 10, rotate: -3 }, animationOptions),
main: animation(
'#oss-twitter',
{ x: 0, y: [1200, 10], rotate: -3 },
animationOptions
),
reversed: animation(
'#oss-twitter',
{ y: 1200, x: -10, rotate: -3 },
@@ -80,7 +91,11 @@
},
{
mobile: {
main: animation('#oss-youtube', { x: 0, y: 5, rotate: 2 }, animationOptions),
main: animation(
'#oss-youtube',
{ x: 0, y: [1200, 5], rotate: 2 },
animationOptions
),
reversed: animation('#oss-youtube', { y: 1200, x: -5, rotate: 2 }, animationOptions)
},
desktop: {
@@ -98,7 +113,11 @@
},
{
mobile: {
main: animation('#oss-commits', { x: 0, y: -4, rotate: -1 }, animationOptions),
main: animation(
'#oss-commits',
{ x: 0, y: [1200, -4], rotate: -1 },
animationOptions
),
reversed: animation('#oss-commits', { y: 1200, x: 4, rotate: -1 }, animationOptions)
},
desktop: {
@@ -122,7 +141,7 @@
}
const animScale: Scale = [0, animations.length - 1];
const percentScale: Scale = [0.1, 0.9];
const percentScale: Scale = [0.1, 0.8];
const scrollHandler = createScrollHandler(
animations.map(({ mobile, desktop }, i) => {
return {
@@ -238,11 +257,12 @@
<style lang="scss">
#open-source {
min-height: 1500px;
height: 250vh;
min-height: 150vh;
height: 3500px;
position: relative;
@media (min-width: 1024px) {
height: 150vh;
height: 1500px;
}
}

View File

@@ -178,8 +178,8 @@
return scrollInfo.percentage >= min && scrollInfo.percentage < max;
});
const product = products[activeIdx] as Product | undefined;
const scale = productsScales[activeIdx] as Scale | undefined;
const product = products[activeIdx] as Product;
const scale = productsScales[activeIdx] as Scale;
const percent = scale ? toScale(scrollInfo.percentage, scale, [0, 1]) : 0;
return {
@@ -372,7 +372,7 @@
<Messaging.Phone />
{:else if active.product === 'functions'}
<Functions.Phone />
{:else if !['auth', 'databases', 'storage', 'messaging', 'functions'].includes(anyify(active.product))}
{:else if !['auth', 'databases', 'storage', 'messaging', 'functions'].includes(active.product)}
<Realtime.Phone />
{/if}
</div>

View File

@@ -68,7 +68,7 @@
<div class="web-strip-plans-item-wrapper">
<div class="web-strip-plans-plan">
<h4 class="title web-description">Scale</h4>
<div class="web-title web-u-color-text-primary">$685</div>
<div class="web-title web-u-color-text-primary">$599</div>
<div class="info web-caption-500">per org/month</div>
</div>
<p class="web-strip-plans-info web-caption-500">

View File

@@ -47,9 +47,21 @@
}
function isInViewport(element: Element): boolean {
const mobileHeader = document.querySelector('.aw-mobile-header');
const isMobile =
mobileHeader &&
getComputedStyle(mobileHeader).display !== 'none' &&
isVisible(mobileHeader, {
top: 0,
bottom: window.innerHeight,
left: 0,
right: window.innerWidth
});
const h = isMobile || 'bannerHidden' in document.body.dataset ? 32 : 64;
return isVisible(element, {
top: 32,
bottom: 32,
top: h,
bottom: h,
left: 0,
right: window.innerWidth
});

View File

@@ -324,8 +324,8 @@
height="40"
alt=""
/>
<h3 class="web-info-boxes-title">GDPR</h3>
<p class="web-info-boxes-content">
<h3 class="aw-info-boxes-title">GDPR</h3>
<p class="aw-info-boxes-content">
Safeguard user data and privacy with provided GDPR regulations.
</p>
</li>

View File

@@ -0,0 +1,106 @@
---
layout: post
title: "June product update: Public roadmap | The Appwriter | Messaging"
description: "Check out everything new that happened in June, including public roadmap, the Appwriter release and the new Messaging page."
date: 2024-07-04
cover: /images/blog/product-update-june/product-update-june-2024.png
timeToRead: 5
author: dennis-ivy
category: product
---
Its the first week of a new month, which means its time to reflect on all the wonderful things that happened in June. Read on to learn more about our public roadmap, Appwriters out in the wild, and dev tools to boost your productivity.
# Public roadmap
![Appwrite's public roadmap](/images/blog/product-update-june/public-roadmap.png)
This month, we launched the new public roadmap on GitHub. It is part of our commitment to transparency with the Appwrite community. It enables:
- Increased transparency in our product priorities
- Direct feedback route for the community
- Further clarity in timelines to set expectations
The roadmap is designed to help us increase collaboration among the core team, contributors, maintainers, and Appwrite developers.
[Read the announcement here.](https://appwrite.io/blog/post/public-roadmap-announcement)
# The Appwriter is out!
Appwrite community members have started to receive their Appwriters, and the reviews are in! People love it.
![Appwriter testimonials](/images/blog/product-update-june/appwriter-testimonials.png)
Were very proud of the overwhelmingly positive feedback from the community. Our team has worked tirelessly for the past six months to ensure that every detail, from the packaging to every key press, is perfect.
The Appwriter will be available for pre-order on the Appwrite store today! [Visit our store](https://apwr.dev/store) to place your pre-order.
Does this mean were also a hardware company now?
# Appwrite Messaging
![Messaging page](/images/blog/product-update-june/messaging-page.png)
Appwrites newest product Messaging now has its own product page (the first of its kind!). Messaging allows you to set up email, SMS and push notifications to your users from a single API.
You can find more in-depth information on how messaging works and even play around with the interactive animations.
[Visit the brand-new page to find out more.](https://appwrite.io/products/messaging)
# 42K stars on GitHub
[This is a huge moment for the community!](https://x.com/appwrite/status/1805564529083924701) Thank you to everyone for supporting us in our journey. Onwards and upwards!
# Product updates
Big shoutout to [Manjunath0408](https://github.com/Manjunath0408) and [Darshan](https://github.com/ItzNotABug) for their contributions!
## New releases
- [[Console]](https://github.com/appwrite/console/pull/942) Added new filtering method `contains` , and enum and array filtering
- [[Mobile version]](https://github.com/appwrite/console/pull/1122) File extensions are now scrollable on mobile by [Manjunath0408](https://github.com/Manjunath0408)
- [[Mobile version]](https://github.com/appwrite/console/pull/1126) Fixed the mobile footer
- [[Mobile version]](https://github.com/appwrite/console/pull/1107) Fixed mobile paddings danger cards
- [[Mobile version]](https://github.com/appwrite/console/pull/1110) Improved mobile table responsiveness
- [[Messaging]](https://github.com/appwrite/console/pull/1123) Added Messaging support to the events builder modal by [Darshan](https://github.com/ItzNotABug)
## Bug fixes
- Improved Console loading bar
- [Throw an error if invalid domain is added to a function](https://github.com/appwrite/console/pull/1115) by [Manjunath0408](https://github.com/Manjunath0408)
- [Fix for inconsistent build logs](https://github.com/appwrite/appwrite/issues/6237) by [Darshan](https://github.com/ItzNotABug)
- [Fix for migration of collections, attributes and indexes of Databases](https://github.com/appwrite/appwrite/issues/8044)
# Open source community recognitions
This month, were excited to feature Raman as part of our Monthly Community Recognitions.
Raman created a video using **Appwrite Cloud and Flutter** showcasing how to work with Authentication. He also has over 2,000 messages on our Discord community server, and we want to recognize him for his commitment to the community.
[Watch the video.](https://www.youtube.com/watch?v=jLVWZauHnjE)
If you'd like to participate in next month's Community Recognitions, [join our Discord server](https://appwrite.io/discord) to showcase your project.
# Engineering resources
- [Watch](https://www.youtube.com/watch?v=OFrMWvgsZ94): Add custom user data with Preferences
- [Watch:](https://www.youtube.com/watch?v=smnxWspZMNY) Build a theme switcher in React in 5 minutes
- [Watch](https://x.com/appwrite/status/1799141497973186760): Unlock granular permissions in your apps with Appwrite Labels
- [Watch](https://youtube.com/shorts/glbo5lsWSsI?feature=shared): 4 VS Code themes you should try
- [Read](https://appwrite.io/blog/post/developer-tools-appwrite): 12 tools to supercharge your Appwrite project
- [Read](https://appwrite.io/blog/post/baas-vs-custom-backend): BaaS vs. Custom Backend: making the right choice as a freelancer
- [Read](https://appwrite.io/blog/post/integrate-custom-auth-sveltekit): Integrate any external authentication solution into your Appwrite project
# Open source and community updates
- [Repository:](https://github.com/2002Bishwajeet/serverless-functions) OGP Extractor is a serverless API that extracts open graph data, used to generate link previews by Bishwajeet Parhi
- [Repository:](https://pub.dev/packages/app_realtime_ext) Up-to-date Appwrite Flutter SDK by Muslimin Ontong
# Whats to come
If youve checked out our public roadmap, you might have seen what weve been working on. But here is a quick sneak peek into what you can expect from us in the coming weeks:
- Appwrites newest version 1.6 soon to be released
- An updated version of [Pink design](https://pink.appwrite.io/) is in the works
- A new release means a new Init… keep an eye out for the announcement!
Follow us on [socials](https://x.com/appwrite) and check our [Changelog](https://appwrite.io/changelog) regularly, as we will release more information in the coming weeks.

View File

@@ -172,7 +172,7 @@
<div
class="web-title web-u-color-text-primary u-margin-block-start-8"
>
$685
$599
</div>
<div class="u-margin-block-start-4">
per organization/month
@@ -189,16 +189,17 @@
</button>
</header>
<div class="web-pricing-cards-content">
<p>Everything in Pro and:</p>
<p>Everything in Pro, plus:</p>
<ul class="web-checked-list-circle">
<li><span>5TB bandwidth</span></li>
<li><span>500GB storage</span></li>
<li><span>10M executions</span></li>
<li><span>500K monthly active users</span></li>
<li><span>Priority support</span></li>
<li><span>14-day log retention</span></li>
<li><span>Additional organization roles</span></li>
<li><span>Unlimited seats</span></li>
<li><span>SOC-2</span></li>
<li><span>BAA</span></li>
<li><span>Network logs</span></li>
<li><span>28-day log retention</span></li>
<li><span>Organization roles</span></li>
<li><span>SSO</span></li>
<li><span>Activity logs</span></li>
<li><span>Priority support</span></li>
</ul>
</div>
</div>

View File

@@ -29,7 +29,7 @@
title: 'Bandwidth',
free: '10GB',
pro: '300GB',
scale: '5TB'
scale: '300GB'
},
{
title: 'Additional bandwidth',
@@ -41,7 +41,7 @@
title: 'Storage',
free: '2GB',
pro: '150GB',
scale: '500GB'
scale: '150GB'
},
{
title: 'Additional storage',
@@ -53,7 +53,7 @@
title: 'Compute',
free: '750K executions',
pro: '3.5M executions',
scale: '10M executions'
scale: '3.5M executions'
}
]
},
@@ -118,19 +118,13 @@
title: 'Logs retention',
free: '1 hour',
pro: '7 days',
scale: '14 days'
scale: '28 days'
},
{
title: 'Budget caps and alerts',
free: 'Not needed',
pro: true,
scale: true
},
{
title: 'Additional organization member roles',
free: '-',
pro: '-',
scale: 'Coming Soon'
}
]
},
@@ -141,7 +135,7 @@
title: 'Users',
free: '75,000 monthly active users',
pro: '200,000 monthly active users',
scale: '500,000 monthly active users'
scale: '200,000 monthly active users'
},
{
title: 'Additional users',
@@ -205,7 +199,7 @@
title: 'File size limit',
free: '50MB',
pro: '5GB',
scale: '5TB'
scale: '5GB'
},
{
title: 'Image transformations',
@@ -228,7 +222,7 @@
title: 'Executions',
free: '750K',
pro: '3.5M',
scale: '10M'
scale: '3.5M'
},
{
title: 'Additional executions',
@@ -245,7 +239,7 @@
title: 'Concurrent connections',
free: '250',
pro: '500',
scale: '1500'
scale: '500'
},
{
title: 'Additional concurrent connections',
@@ -260,6 +254,47 @@
scale: 'Unlimited'
}
]
},
{
title: 'Security',
rows: [
{
title: 'SOC-2',
free: '-',
pro: '-',
scale: true
},
{
title: 'HIPAA',
free: '-',
pro: '-',
scale: true
},
{
title: 'BAA',
free: '-',
pro: '-',
scale: true
},
{
title: 'Additional organization roles',
free: '-',
pro: '-',
scale: 'Coming Soon'
},
{
title: 'Network logs',
free: '-',
pro: '-',
scale: 'Coming Soon'
},
{
title: 'Activity logs',
free: '-',
pro: '-',
scale: 'Coming Soon'
}
]
},
{
title: 'Support',
@@ -277,7 +312,7 @@
scale: true
},
{
title: 'Phone',
title: 'Priority',
free: '-',
pro: '-',
scale: true

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB