1.0.10 • Published 3 years ago

@canahui/medium-posts v1.0.10

Weekly downloads
3
License
MIT
Repository
github
Last release
3 years ago

AWS Infrastructure to get a user's medium posts from their RSS feed, convert it to JSON, and post to an Amazon AWS S3 Bucket.

Publish


JSON Medium Posts

This is all you need to stand up your own infrastructure to get medium RSS posts, transform them into JSON, and upload to an S3 Bucket. All the code that is needed is this:

import { Construct, Stack, StackProps } from '@aws-cdk/core';
import { MediumCdkConstruct } from '@canahui/medium-posts';

export class MediumCdkStack extends Stack {
  constructor(scope: Construct, id: string, props?: StackProps) {
    super(scope, id, props);

    new MediumCdkConstruct(this, 'JoseMediumBlogPostsJSON', {
      mediumUser: '@josecanahui'
    })
  }
}

With default options, the lambda will run every 12 hours and upload the json-parsed rss.feed.entries to a new s3 bucket with the key medium/posts. It will have public read rights for that file. You can then set it as an origin for a cloudfront distribution and cache it if you wish.

Options

The MediumCdkConstruct accepts the following props when initializing:

namerequireddefaultdescription
mediumUseryesN/AThe Medium user's RSS feed you want to target. Eg. @josecanahui.
updateScheduleno12 hoursHow often to fetch the RSS, convert, and upload to s3.
jsonLocationno'medium/posts'The s3 key of where to put your generated JSON.

CDK

This is a CDK Construct meaning you need to have an AWS account configured to run. Follow these instructions to get started.