aws-amplify / amplify-js

A declarative JavaScript library for application development using cloud services.
https://docs.amplify.aws/lib/q/platform/js
Apache License 2.0
9.42k stars 2.12k forks source link

Focus Areas for Q4 2023 #11833

Closed abdallahshaban557 closed 8 months ago

abdallahshaban557 commented 1 year ago

Hello everyone,

We wanted to inform you we have published a page in our wiki detailing our Focus Areas for 2023. We wanted to make sure you know what we are working on, and get your feedback as we move forward.

rpostulart commented 1 year ago

https://github.com/aws-amplify/amplify-swift/issues/1005

Is this still on the backlog?

abdallahshaban557 commented 1 year ago

Hello @rpostulart - unfortunately, this issue did not make the cut for our 2023 focus areas. We will keep you informed on that issue when we have updates.

codingnuclei commented 1 year ago

Really interested in the webAuthN solution. We have managed to build a solution with cognito and amplifyJS that enables user to use a one time code or their biometrics.

The tricky part with the webauthn was the server aspect of how cognito lambda triggers don't pass session data been the triggers you need it to.

Then there is a tricky Ui/Ux challenge. Unless it changed recently you can not tell if a user has a passkey for your domain. Meaning how you present the auth flow to the user can be challenging. Conditional UI does aid slightly but still requires a user to add their username.

Interested to see your approach for both aspectsđź‘Ť

abdallahshaban557 commented 1 year ago

Hi @codingnuclei - thank you so much for this feedback - this is coming at an excellent time since we are going through our design. We are excited to share more as we have our design in a better spot!

codingnuclei commented 1 year ago

@abdallahshaban557 excellent. Would be happy to set some time aside to discuss our findings further. Just reach out if needed!

abdallahshaban557 commented 1 year ago

Got it @codingnuclei - will reach out when we are at a closer point to sharing our designs!

oe-bayram commented 1 year ago

We use the Amplify Framework for creating large ERP systems and encounter some scalability limitations, especially concerning these issues:

What's the status of these issues? Will they also be included in the Focus Areas for Q4 2023?

abdallahshaban557 commented 1 year ago

Hi @oe-bayram - Thank you for reaching out!

on the stack mapping issue, our team is still investigating this with the support of the AppSync team to overcome this limitation. We will keep providing updates on that issue when we have a path forward. We do not have a clear ETA yet.

For the Plugins support - can you please elaborate on your use case here? What are you looking for specifically?

SilverLinings89 commented 1 year ago
abdallahshaban557 commented 1 year ago

@SilverLinings89 - we really appreciate you taking the time to give us this feedback. I will address them individually:

SilverLinings89 commented 1 year ago

@abdallahshaban557 I'm gonna be honest: This sounds like the perfect response :) Thank you very much for your remarks. Our team really appreciates your efforts and we are happy to have chosen AWS and Amplify for our product.

Below you find the output of our angular build command with angular 16. There are some more of these but I have only included the ones that have clearly been imported by Amplify. Also: To shorten the code: After every warning, there is the following hint: "CommonJS or AMD dependencies can cause optimization bailouts. For more information see: https://angular.io/guide/build#configuring-commonjs-dependencies"

yarn run v1.22.19
$ ng build --configuration production
The esbuild-based browser application builder ('browser-esbuild') is currently in developer preview and is not yet recommended for production use. For additional information, please see https://angular.io/guide/esbuild
The 'budgets' option is not yet supported by this builder.
â ¦ Building...

â–˛ [WARNING] Module 'zen-push' used by 'node_modules/@aws-amplify/datastore/lib-esm/storage/storage.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/util' used by 'node_modules/@aws-crypto/sha256-js/build/jsSha256.js' is not ESM

â–˛ [WARNING] Module 'axios' used by 'node_modules/@aws-amplify/api-rest/lib-esm/RestClient.js' is not ESM

â–˛ [WARNING] Module 'bowser' used by 'node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-user-agent-browser/dist-es/index.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/util' used by 'node_modules/@aws-sdk/eventstream-marshaller/node_modules/@aws-crypto/crc32/build/index.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/supports-web-crypto' used by 'node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-crypto/sha256-browser/build/crossPlatformSha256.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/ie11-detection' used by 'node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-crypto/sha256-browser/build/crossPlatformSha256.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/util' used by 'node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-crypto/sha256-browser/build/webCryptoSha256.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/supports-web-crypto' used by 'node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-crypto/sha256-browser/build/crossPlatformSha256.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/ie11-detection' used by 'node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-crypto/sha256-browser/build/crossPlatformSha256.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/supports-web-crypto' used by 'node_modules/@aws-crypto/sha256-browser/build/crossPlatformSha256.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/ie11-detection' used by 'node_modules/@aws-crypto/sha256-browser/build/crossPlatformSha256.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/util' used by 'node_modules/@aws-crypto/sha256-browser/build/webCryptoSha256.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/supports-web-crypto' used by 'node_modules/@aws-sdk/client-location/node_modules/@aws-crypto/sha256-browser/build/crossPlatformSha256.js' is not ESM

â–˛ [WARNING] Module '@aws-crypto/ie11-detection' used by 'node_modules/@aws-sdk/client-location/node_modules/@aws-crypto/sha256-browser/build/crossPlatformSha256.js' is not ESM
abdallahshaban557 commented 1 year ago

That is amazing to hear - we hope to be bringing even more value to you and your team soon!

Got it on the issue, and it is on our radar! We already have a Github issue on this as well! @AllanZhengYP on our team is actively investigating it!. We will provide updates on that Github issue as we make progress.

DougalW commented 1 year ago

Please please please prioritise the CloudFormation scaling issues:

https://github.com/aws-amplify/amplify-category-api/issues/32 https://github.com/aws-amplify/amplify-category-api/issues/658 https://github.com/aws-amplify/amplify-studio/issues/414 https://github.com/aws-amplify/amplify-category-api/issues/1854

There's clearly something going on under the covers that's preventing scaling past a certain point. It seems to start around 40 tables in dynamoDB and become unusable somewhere >50, so much so that Amplify becomes unusable.

abdallahshaban557 commented 11 months ago

Hi @DougalW - the issues you have mentioned are on our radar, we are aware of these scaling issues, and have some potential paths forward identified to help us alleviate these pain points. We will continue to provide updates on these Github issues as we make more progress.

aaamoshd commented 11 months ago

Hello there. It would be great, if the team could also focus on changing the behavior of Device Tracking when Custom_Auth flow is used. As it stands, device tracking is a feature that cannot be used in tandem with Custom_Auth flow which might be very disruptive for certain implementations.

Here are the related cases with Device Tracking and Custom_Auth flow.

https://github.com/aws-amplify/amplify-js/issues/9592 https://github.com/aws-amplify/amplify-js/issues/12220

abdallahshaban557 commented 10 months ago

Hi @aaamoshd - thank you so much for this feedback. We had been investigating them before - and agree that not having them supported is disruptive. We will continue to provide updates on them as we make progress.

jeffpball commented 10 months ago

Hello, lots of love to the AWS Amplify team and AWS more widely. I know you're a business, but your tools enable developers to do a lot of cool stuff. So thanks for your work.

This is probably a lot lower prio than the folks who are working on production code bases using Next.js, but I wanted to bring it up on behalf of Next.js novices like myself.

It would be great to have this Next.js tutorial in the Amplify docs updated to include:

It seems to me that specifically this section could use the updates mentioned above. There's probably other places in the tutorial that will need updating, but overall if we could get an up to date Next.js GraphQL CRUD app (including Authentication) server component tutorial with all the recent updates applied, it would be a big win for me personally and hopefully for others.

A little backstory: I first attempted to ask Vercel to update their Amplify example app repo and they decided to remove it and refer people to your docs. See here https://github.com/vercel/next.js/issues/57127 and here https://github.com/vercel/next.js/commit/ac54377e6723543333109adff43a804778712a8f

So, now I'm trying to piece together what would amount to an updated version of the Next.js tutorial app using both Vercel's primary documentation regarding App Router and these various Amplify docs: Amplify JS 6 Developer Preview announcement The actual JS 6 Developer Preview docs Next.js Features blog article

...and a few other docs that are out there. It's a pretty challenging task - it feels like there's a lot of moving parts with the release of Next.js 13.4 and Amplify JavaScript v6 so thanks in advance for any assistance on this!

abdallahshaban557 commented 10 months ago

Hi @jeffpball - we are working on updating our documentation to make it a lot easier to use NextJS with Amplify as part of our v6 release of Amplify JavaScript. We understand that with the release of App Router the paradigm has shifted a bit on how to use NextJS, and our tooling is now catching up to make that experience easier. Stay tuned! V6 and our updated docs are almost there!

jeffpball commented 10 months ago

Hi @jeffpball - we are working on updating our documentation to make it a lot easier to use NextJS with Amplify as part of our v6 release of Amplify JavaScript. We understand that with the release of App Router the paradigm has shifted a bit on how to use NextJS, and our tooling is now catching up to make that experience easier. Stay tuned! V6 and our updated docs are almost there!

That's great news, thanks a lot @abdallahshaban557 !

rogueturnip commented 10 months ago

Excited to hear it's "almost there" :)

charlieforward9 commented 10 months ago

I still lack many of the 'behind the scenes' insights, but it seems that Amplify's interoperability with Web Workers is not stable. Having a bug-free experience when using Amplify API's and Web Workers is necesarry for our use case. More information on this issue: aws-amplify/amplify-js#12278

RichiCoder1 commented 9 months ago

Wanted to +1 how excited I'd personally be for Passkey/WebAuthN support to be first class. Massive enabler for ditching passwords without having to rely on third party social providers.

djorgji commented 9 months ago

+1 for the passwordless logins for us.

osehmathias commented 8 months ago

Is Datastore encryption on the client on the horizon? Or should we be generously tempering our expectations in this regard?

Edit: Not having this encrypted excludes almost all healthcare applications from using Datastore

cwomack commented 8 months ago

Hello everyone! We appreciate all the comments and feedback on this issue thus far, and wanted to give a quick status update/summary of what was accomplished in Q4 of 2023 per these focus areas. We had an exciting quarter to close out last year and saw “wins” in the following areas:

We also wanted to recognize the areas where we didn’t make quite as much progress as we would have liked, such as the Storage category improvements, observability/monitoring, and enabling MagicLink/one-time password. We plan on having these be a part of the Q1 2024 Focus Areas and will release a new issue that details these by the end of this month!