Ready to save time deploying your content to AWS? We have a solution for you. Bitovi has created a new GitHub action that uploads your repo content into an S3 bucket and transforms it into a full-blown website. With just one step, our GitHub action sets up DNS, certificates, and even a CDN to get your website up and running in record time.
Subscribe
Get our best content on how to build better apps.
Subscribe
Get our best content on how to build better apps.
Got product development questions?
Join us on
Discord
10 Product Design Personas Worth Hiring in 2024
Hiring product design consultants often feels like a blind date - you have to hope your friend knows exactly what you need in a partner. At Bitovi, we match product designers with projects based on the depth and breadth of their experience, their unique skills, and your project’s needs. Well-rounded product design teams should have people experienced in both B2C and B2B platforms. They should be able to design end-to-end for mobile, native apps, or desktop experiences. They should be proficient with common design tools. And they should be active problem solvers.
Heatherlee Nguyen
Replay Testing To Avoid Non-Determinism in Temporal Workflows
Deploying an updated version of Temporal workflow code can result in errors if there are non-deterministic changes to the code. Determinism is verified during the “replay“ process that rebuilds the last known state of an ongoing workflow in order to continue its execution. Rebuilding execution state enables Temporal to support long-sleeping workflows and reliably relocate workflow executions to another worker when one crashes.
Nils Lundquist
Javascript Software Consultant
Sending Transactional Emails with Remix and Amazon AWS SES
Almost any web app with authenticated users will need to send some emails. You could work around it by using an authenticated service like Auth0 or AWS Incognito, but let’s assume you’ve set up Remix with a stack that ships with built-in authentication.
Ryan Spencer
Developer
Using Temporal Cloud With On-Prem Data
Using cloud services is standard practice for most backend application architectures. When using cloud services, it is important to understand and control what data is leaving your network and being sent to the cloud. Temporal Cloud has great options available to ensure that data sent to and from the cloud is securely encrypted. This post will showcase how Temporal Cloud might interact with your infrastructure by default and how you can customize Temporal to prevent any user or business-related data from being sent to the cloud.
Emil Kais
Intro to Temporal Architecture and Essential Metrics
Managing your own Temporal cluster is a daunting task. Between the four core services, the myriad of metrics to monitor, and a separate persistence service, it's a sizeable undertaking for any team. This post begins a new series that will review the work involved in hosting Temporal yourself and try to demystify it.
Nils Lundquist
Javascript Software Consultant
How to Generalize Component Props With Type Safety
Creating reusable components is often hindered by excess code accounting for each use case the components need to support. For example, a dropdown that supports text, links, buttons, and even complex components, or a text component that supports multiple different types of HTML tags, in addition to reusable components as well. In both cases, a variety of props will exist for each type of component we pass in that may need to be shared between the parent and child.
Christina Labay