calendar-fullstack-aws-sveltekit

Calendar Fullstack Aws Sveltekit

Sveltekit and AWS fullstack app for archiving, backing up, and rendering calendar events

Calendar app

A simple app for archiving, rendering, and creating calendar events

Using Sveltekit + Typescript on the frontend, keeping everything as close to 'web native' as possible.

Using a lot of AWS services for the backend: DynamoDB, S3, Amplify, Cognito, CDK, Lambda, API Gateway, KMS.

Table of Contents

Background

Product Goals

  1. an archiving tool - from GCal and offline to personal cloud + backups
  2. a bridging tool from GCal - that allows for GCal integration whilst also removing the need to check that platform
  3. a long-form personal design system and UI

Rationale

A while ago I was really adamant about keeping a calendar of useful events. I'd add anything and everything to my calendar. I amassed a large amount of calendar event which I'd like to bring into MY OWN ecosystem.

I've always maintained a simple rule of offline online events, but this has been tricky to continue when most people are super comfortable with Google Calendar.

So the solution is in part:

    1. an archiving tool - from GCal and offline to personal cloud + backups
    1. a bridging tool from GCal - that allows for GCal integration whilst also removing the need to check that platform

Final consideration is something I call personal UI and personal tech. We're at a point where building the tools that are most popular is achievable by small teams.

Equally, the UI that serve many, don't serve the individual.

I subscribe to the idea that some web services are timeless and essential: email, calendar, notes, consuming video, consuming audio.

Yet right now we have to bounce between different brands for these things. The largest companies in the world fighting for our attention.

Why should we accept this scenario? Does it benefit us?!!

In my case I'd like to start building a personal app suite and as part of this a personal design system and a personal UI language.

All systems designed for long term use (10years+) and geared around constant evolution depending on personal scenarios: disability, changes in motivation etc.

    1. a long-form personal design system and UI

Designs

Very early mockups on Figma.

Will be developing in the same file.

Install

npm i

More

See Sveltekit install.

Usage

npm run dev -- --open

API

Goals

  • Efficient archiving of past events in S3
  • Built-in data storage redundancy
  • Built-in hot data in DynamoDB - burstable, low cost
  • Modern DynamoDB table design
  • Cognito auth
  • Amplify frontend deployment and auth
  • Lambda + API Gateway controllers + SQS or EventBridge is needed for queues
  • CDK for infrastructure as code
  • Security using KMS - encryption as rest and in-transit
  • Diamond pattern testing suite - more e2e and integration, than unit tests

Contributing

Not accepted at present

License

Top categories

svelte logo

Want a Svelte site built?

Hire a Svelte developer
Loading Svelte Themes