PinnedJWT Authentication with FastAPI and AWS CognitoLately, I have played around with the FastAPI framework, and I am delighted by its speed, rich features, and simplicity. As I am currently working on a web app that manages users via AWS Cognito, I need to secure specific API endpoints in the backend to make sure only logged…Fastapi6 min read
Published in Level Up Coding·Mar 6, 2021How to include iframes in Puppeteer’s HTML outputThis is going to be a short tutorial about an issue we at textcloud encountered the other day. Internally, we use headless Puppeteer with an array of stealth plugins for our web scraping purposes. Sure, Puppeteer might be slower than just doing import requests in Python, but it's 2021 and…Puppeteer2 min read
Published in Level Up Coding·Jan 19, 2021One repository, many AWS Lambda functions: Conditional deployment with GitLab CIAt textcloud, we run the heart of our workflow automation platform on AWS Lambda. This allows us to offer our customers a fast and reliable experience. …AWS Lambda4 min read
Published in Level Up Coding·Jan 18, 2021Deploy AWS Lambda Python functions through GitLab CIThis is another part of my series on how we at textcloud manage our AWS Lambda functions. As great as the serverless paradigm is, one enters a hell of pitfalls when working on complex projects. …AWS Lambda5 min read
Published in Level Up Coding·Jan 14, 2021Schedule your Lambda functions with boto3 (CRON)This is a quick tutorial on how to use Python and boto3 to programmatically schedule the execution of AWS Lambda functions. That’s super useful if you want to add/remove rules after you deployed your function, for example, based on input from your users. If you only need to set up…AWS3 min read
Aug 2, 2020Goodbye PHP & Mailchimp: Build a simple Email List with Airtable and LambdaWhen I created a landing page for my current startup textcloud.co, I wanted users to leave their email address in case they are interested in our product. However, all existing methods would be either too complicated to set up (e.g. Mailchimp), required changes in our stack (e.g. a PHP backend)…Airtable6 min read