-
Notifications
You must be signed in to change notification settings - Fork 89
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
445b5c2
commit 8745a68
Showing
123 changed files
with
12,239 additions
and
0 deletions.
There are no files selected for viewing
This file contains 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,30 @@ | ||
# Fullstack AWS React Application- | ||
|
||
This project is a robust fullstack web application developed with React for the frontend and integrated with AWS services for authentication, GraphQL API, and infrastructure management. The application leverages AWS capabilities to deliver a scalable, secure, and efficient solution. | ||
|
||
## Frontend: React | ||
|
||
use :- npx create-react-app | ||
|
||
**User Interface**: The frontend is developed using React, providing a dynamic and responsive user experience. It leverages React's component-based architecture for modular and maintainable code. | ||
|
||
### Backend: AWS | ||
|
||
**Authentication:** AWS Amplify is used for implementing user authentication. It supports various sign-in methods, including email, social logins, and multi-factor authentication (MFA), ensuring secure user access. | ||
|
||
**GraphQL API:** AWS AppSync provides a fully managed GraphQL API, allowing for efficient data querying and real-time updates. It simplifies interactions with the database and supports offline data synchronization. | ||
|
||
### IAM Roles and Users: | ||
|
||
**IAM Integration:** AWS Identity and Access Management (IAM) is used to manage permissions and control access to AWS resources. IAM roles and users are configured to ensure secure and precise access controls for different parts of the application. | ||
|
||
**Access Management:** Granular access policies are set up for different AWS services, enhancing security and operational efficiency. | ||
|
||
### Deployment & Infrastructure: | ||
|
||
**Hosting:**The application is deployed on AWS Amplify, providing a streamlined deployment process with continuous integration and delivery (CI/CD) capabilities. | ||
|
||
**Serverless Functions:**AWS Lambda functions are employed to handle backend logic and integrate with the GraphQL API, supporting a serverless architecture that scales automatically. | ||
|
||
|
||
|
111 changes: 111 additions & 0 deletions
111
New_APIs/Amplify-fullstack-API/amplify/#current-cloud-backend/amplify-meta.json
This file contains 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,111 @@ | ||
{ | ||
"providers": { | ||
"awscloudformation": { | ||
"AuthRoleName": "amplify-mynotes-staging-b2b56-authRole", | ||
"UnauthRoleArn": "arn:aws:iam::339712714202:role/amplify-mynotes-staging-b2b56-unauthRole", | ||
"AuthRoleArn": "arn:aws:iam::339712714202:role/amplify-mynotes-staging-b2b56-authRole", | ||
"Region": "ap-southeast-2", | ||
"DeploymentBucketName": "amplify-mynotes-staging-b2b56-deployment", | ||
"UnauthRoleName": "amplify-mynotes-staging-b2b56-unauthRole", | ||
"StackName": "amplify-mynotes-staging-b2b56", | ||
"StackId": "arn:aws:cloudformation:ap-southeast-2:339712714202:stack/amplify-mynotes-staging-b2b56/5d40cab0-4b32-11ef-8fd8-06f396c97ee1", | ||
"AmplifyAppId": "d2nrrgvsn5u7rq" | ||
} | ||
}, | ||
"api": { | ||
"mynotes": { | ||
"dependsOn": [], | ||
"output": { | ||
"authConfig": { | ||
"additionalAuthenticationProviders": [], | ||
"defaultAuthentication": { | ||
"apiKeyConfig": { | ||
"apiKeyExpirationDays": 7 | ||
}, | ||
"authenticationType": "API_KEY" | ||
} | ||
}, | ||
"GraphQLAPIIdOutput": "cye6ubdc6bgxddnh7pcgwbmubi", | ||
"GraphQLAPIEndpointOutput": "https://n5edpqals5aohotum3xa72osli.appsync-api.ap-southeast-2.amazonaws.com/graphql", | ||
"GraphQLAPIKeyOutput": "da2-kehm2qcqofd3besloumulb5vlm" | ||
}, | ||
"providerPlugin": "awscloudformation", | ||
"service": "AppSync", | ||
"lastPushTimeStamp": "2024-07-26T15:57:37.537Z", | ||
"providerMetadata": { | ||
"s3TemplateURL": "https://s3.amazonaws.com/amplify-mynotes-staging-b2b56-deployment/amplify-cfn-templates/api/cloudformation-template.json", | ||
"logicalId": "apimynotes" | ||
} | ||
} | ||
}, | ||
"auth": { | ||
"mynotesccae4f3b": { | ||
"customAuth": false, | ||
"dependsOn": [], | ||
"frontendAuthConfig": { | ||
"mfaConfiguration": "OFF", | ||
"mfaTypes": [ | ||
"SMS" | ||
], | ||
"passwordProtectionSettings": { | ||
"passwordPolicyMinLength": 8, | ||
"passwordPolicyCharacters": [] | ||
}, | ||
"signupAttributes": [ | ||
"EMAIL" | ||
], | ||
"socialProviders": [], | ||
"usernameAttributes": [], | ||
"verificationMechanisms": [ | ||
"EMAIL" | ||
] | ||
}, | ||
"providerPlugin": "awscloudformation", | ||
"service": "Cognito", | ||
"output": { | ||
"UserPoolId": "ap-southeast-2_i03FxeqOd", | ||
"AppClientIDWeb": "6bm1hrehfqg90vta1ifbgjr00h", | ||
"AppClientID": "1d896vivvec1d0hvqrk6lptel2", | ||
"IdentityPoolId": "ap-southeast-2:9db4441d-2163-440e-adba-e23a3fe75fd4", | ||
"UserPoolArn": "arn:aws:cognito-idp:ap-southeast-2:339712714202:userpool/ap-southeast-2_i03FxeqOd", | ||
"IdentityPoolName": "mynotesccae4f3b_identitypool_ccae4f3b__staging", | ||
"UserPoolName": "mynotesccae4f3b_userpool_ccae4f3b" | ||
}, | ||
"lastPushTimeStamp": "2024-07-26T15:57:44.008Z", | ||
"providerMetadata": { | ||
"s3TemplateURL": "https://s3.amazonaws.com/amplify-mynotes-staging-b2b56-deployment/amplify-cfn-templates/auth/mynotesccae4f3b-cloudformation-template.json", | ||
"logicalId": "authmynotesccae4f3b" | ||
}, | ||
"lastPushDirHash": "Y2leA1T/brYAcNS4RPXQwBzzY/Q=" | ||
} | ||
}, | ||
"function": { | ||
"S3Triggerdc42a5d7": { | ||
"service": "Lambda", | ||
"providerPlugin": "awscloudformation", | ||
"build": true, | ||
"lastBuildTimeStamp": "2024-07-26T15:55:51.984Z", | ||
"lastBuildType": "PROD", | ||
"lastPackageTimeStamp": "2024-07-26T15:55:52.014Z", | ||
"distZipFilename": "S3Triggerdc42a5d7-6a475541666d35456861-build.zip", | ||
"s3Bucket": { | ||
"deploymentBucketName": "amplify-mynotes-staging-b2b56-deployment", | ||
"s3Key": "amplify-builds/S3Triggerdc42a5d7-6a475541666d35456861-build.zip" | ||
}, | ||
"providerMetadata": { | ||
"s3TemplateURL": "https://s3.amazonaws.com/amplify-mynotes-staging-b2b56-deployment/amplify-cfn-templates/function/S3Triggerdc42a5d7-cloudformation-template.json", | ||
"logicalId": "functionS3Triggerdc42a5d7" | ||
}, | ||
"lastPushTimeStamp": "2024-07-26T15:57:44.008Z", | ||
"output": { | ||
"LambdaExecutionRoleArn": "arn:aws:iam::339712714202:role/S3Triggerdc42a5d7LambdaRoledc42a5d7-staging", | ||
"Region": "ap-southeast-2", | ||
"Arn": "arn:aws:lambda:ap-southeast-2:339712714202:function:S3Triggerdc42a5d7-staging", | ||
"Name": "S3Triggerdc42a5d7-staging", | ||
"LambdaExecutionRole": "S3Triggerdc42a5d7LambdaRoledc42a5d7-staging" | ||
}, | ||
"lastPushDirHash": "1B2Qj8YebkkXB424dBxxW7J3vvM=" | ||
} | ||
}, | ||
"storage": {} | ||
} |
Oops, something went wrong.