Skip to content

Korobka Storage is a safe and secure data storage. 100% serverless. Deployed on AWS.

Notifications You must be signed in to change notification settings

anastaszi/Korobka

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Korobka Storage Overview

You can find it live: korobka.anastaszi.com

Video: https://www.youtube.com/watch?v=W6DsQzFFvGA

Functionality

User Registration

registration

Actions

User can browse through already uploaded files, download them, edit, and delete actions

Update

User can update filename, description and file version update

Admin Panel

Admin can see all files and delete them. admin

Development

The project is done using only AWS resources:

  • Amplify
  • Cognito
  • Route53
  • Lambda
  • DynamoDb
  • GraphQl API

Diagram

Most of the resources were created by using Amplify Cli \ (it automatically creates CloudFormation template that can be modified later)

amplify init
amplify auth (cognito)
amplify storage (s3)
amplify api (graphql and dynamodb)
amplify function (lambda)

S3 settings (Lifecycle management and Acceleration Configuration) were modified in CloudFormation template:

"AccelerateConfiguration" : {
  "AccelerationStatus" : "Enabled"
},
"LifecycleConfiguration": {
   "Rules": [
   {
    "Id": "GlacierRule",
    "Status": "Enabled",
    "ExpirationInDays": "730",
    "Transitions": [
     {
      "TransitionInDays": "75",
      "StorageClass": "STANDARD_IA"},
     {
      "TransitionInDays": "365",
      "StorageClass": "GLACIER"
     }
    ]
   }
  ]
}

Cognito Admin group was also created with CloudFormation template

  # BEGIN USER GROUPS RESOURCES

  UserPoolGroupAdmins:
    Type: 'AWS::Cognito::UserPoolGroup'
    Properties:
      GroupName: Admins
      UserPoolId: !Ref UserPool

As well as custom fields like first and last names:

  Schema:
    ... 
    -
      Name: custom:firstname
      AttributeDataType: String
      Required: false
      Mutable: true
    -
      Name: custom:lastname
      AttributeDataType: String
      Required: false
      Mutable: true

Continuous Deployment with GitHub app info

About

Korobka Storage is a safe and secure data storage. 100% serverless. Deployed on AWS.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published