<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Replit Engineering</title><description>Notes from the people building Replit.</description><link>https://replit-engineering-blog.pages.dev/</link><item><title><![CDATA[AI adoption starts with truth]]></title><description><![CDATA[AI adoption is limited by trust. A user who gets burned by a confidently wrong answer will double-check the next one, eventually routing consequential work around the system entirely. Once that happens, AI remains a tool at the edges rather than infrastructure at the center… useful, but never trusted with the workflows where its value compounds. Before a company can benefit from more capable agents, those agents need a reliable way to know what the company considers true.]]></description><link>https://replit-engineering-blog.pages.dev/ai-adoption</link><guid>https://replit-engineering-blog.pages.dev/ai-adoption</guid><pubDate>Mon, 03 Aug 2026 16:15:17 GMT</pubDate></item><item><title><![CDATA[Closing the loop: Evaluating and improving Replit Agent at scale]]></title><description><![CDATA[Most Replit Agent users start with an idea. They describe the goal in natural language — without a repo, test suite, or chosen framework — and expect the agent to turn it into a functioning app. The result might be a website, slide deck, mobile app, several connected artifacts, or something else entirely.]]></description><link>https://replit-engineering-blog.pages.dev/evaluating-and-improving-agent-at-scale</link><guid>https://replit-engineering-blog.pages.dev/evaluating-and-improving-agent-at-scale</guid><pubDate>Tue, 23 Jun 2026 20:22:20 GMT</pubDate></item><item><title><![CDATA[We Built a Video Rendering Engine by Lying to the Browser About What Time It Is]]></title><description><![CDATA[How Replit turns any web page into a deterministic video by virtualizing time itself, patching key browser audio APIs, and waging war against headless Chrome's quirks.]]></description><link>https://replit-engineering-blog.pages.dev/browsers-dont-want-to-be-cameras</link><guid>https://replit-engineering-blog.pages.dev/browsers-dont-want-to-be-cameras</guid><pubDate>Thu, 26 Feb 2026 16:30:00 GMT</pubDate></item><item><title><![CDATA[Decision-Time Guidance: Keeping Replit Agent Reliable]]></title><description><![CDATA[Replit Agent stays reliable through decision-time guidance—injecting situational instructions at key moments rather than front-loading all rules.]]></description><link>https://replit-engineering-blog.pages.dev/decision-time-guidance</link><guid>https://replit-engineering-blog.pages.dev/decision-time-guidance</guid><pubDate>Tue, 20 Jan 2026 21:00:00 GMT</pubDate></item><item><title><![CDATA[How Replit Secures AI-Generated Code [white paper]]]></title><description><![CDATA[AI security scans alone aren't enough. New research shows hybrid approaches combining static analysis with LLM reasoning are essential for vibe coding.]]></description><link>https://replit-engineering-blog.pages.dev/securing-ai-generated-code</link><guid>https://replit-engineering-blog.pages.dev/securing-ai-generated-code</guid><pubDate>Thu, 15 Jan 2026 01:00:00 GMT</pubDate></item><item><title><![CDATA[Inside Replit’s Snapshot Engine: The Tech Making AI Agents Safe]]></title><description><![CDATA[How Replit's snapshot engine makes AI agents safe: instant filesystem forks, versioned databases, and isolated sandboxes enable reversible AI development.]]></description><link>https://replit-engineering-blog.pages.dev/inside-replits-snapshot-engine</link><guid>https://replit-engineering-blog.pages.dev/inside-replits-snapshot-engine</guid><pubDate>Thu, 18 Dec 2025 01:29:00 GMT</pubDate></item><item><title><![CDATA[Enabling Agent 3 to Self-Test at Scale with REPL-Based Verification]]></title><description><![CDATA[How Replit built a novel REPL-based verification system that combines code execution with browser automation to catch "Potemkin interfaces", enabling Agent 3 to work autonomously for 200+ minutes.]]></description><link>https://replit-engineering-blog.pages.dev/automated-self-testing</link><guid>https://replit-engineering-blog.pages.dev/automated-self-testing</guid><pubDate>Mon, 15 Dec 2025 18:31:59 GMT</pubDate></item><item><title><![CDATA[Building Production-ready Apps with Automated Database Migrations on Replit]]></title><description><![CDATA[Learn how Replit automated database migrations between dev and production environments, enabling safe AI agent development with minimal user intervention.]]></description><link>https://replit-engineering-blog.pages.dev/production-databases-automated-migrations</link><guid>https://replit-engineering-blog.pages.dev/production-databases-automated-migrations</guid><pubDate>Wed, 10 Dec 2025 01:24:31 GMT</pubDate></item><item><title><![CDATA[Using Tvix Store to Reduce Nix Storage Costs by 90%]]></title><description><![CDATA[For the past few years, Replit has been using Nix to serve packages/dependencies and provide consistent development environments to our users. Nix on Replit allows users to have access to a large number of packages and libraries that can be seamlessly integrated into a user's project.]]></description><link>https://replit-engineering-blog.pages.dev/tvix-store</link><guid>https://replit-engineering-blog.pages.dev/tvix-store</guid><pubDate>Thu, 06 Mar 2025 04:46:22 GMT</pubDate></item><item><title><![CDATA[Introducing Workflows]]></title><description><![CDATA[With Workflows, you can easily save your development processes and organize them as a sequence of Tasks. Instead of having to repetitively type commands into your shell and remember them, Workflows provide an intuitive interface to configure your frequently used commands and execute them with the click of a button.]]></description><link>https://replit-engineering-blog.pages.dev/introducing-workflows</link><guid>https://replit-engineering-blog.pages.dev/introducing-workflows</guid><pubDate>Thu, 27 Feb 2025 17:37:59 GMT</pubDate></item><item><title><![CDATA[Replit's All-new Database Editor]]></title><description><![CDATA[This week, we launched a new Database Editor feature on Replit. This feature is another addition to Replit’s full suite of tools that make it easy for anyone to build an app — no coding knowledge required.]]></description><link>https://replit-engineering-blog.pages.dev/database-editor</link><guid>https://replit-engineering-blog.pages.dev/database-editor</guid><pubDate>Wed, 26 Feb 2025 17:16:20 GMT</pubDate></item><item><title><![CDATA[So you suspect you have a memory leak...]]></title><description><![CDATA[Programming languages with Garbage Collectors are fantastic! You no longer need to keep track of every single piece of memory that your program needs to run and manually dispose of them. This also means that your programs are now immune to bugs like double-free (accidentally freeing a resource more than once, leading to crashes or security vulnerabilities) and most memory leaks (accidentally not freeing a resource, leading to crashes by running out of memory). But it is still possible to have a memory leak. Consider this TypeScript snippet:]]></description><link>https://replit-engineering-blog.pages.dev/finding-and-solving-memory-leaks</link><guid>https://replit-engineering-blog.pages.dev/finding-and-solving-memory-leaks</guid><pubDate>Tue, 26 Nov 2024 14:28:53 GMT</pubDate></item><item><title><![CDATA[Shell2: 200× faster, persisted, multiplayer-native Shells]]></title><description><![CDATA[Back when computers were still in their infancy, the “computer” usually was a big cabinet in the middle of a room. They typically exposed some internals via a front panel with lots of knobs and ports. Users would connect a terminal device (sometimes called a teletype or a TTY) to this front panel in order to input text and print the corresponding output.]]></description><link>https://replit-engineering-blog.pages.dev/shell2</link><guid>https://replit-engineering-blog.pages.dev/shell2</guid><pubDate>Fri, 11 Oct 2024 23:55:14 GMT</pubDate></item><item><title><![CDATA[How Replit makes sense of code at scale]]></title><description><![CDATA[For any company making creative tools, being able to tell what its most engaged users are building on the platform is critical. When the bound of what’s possible to create is effectively limitless, like with code, sophisticated data is needed to answer this deceivingly simple question. For this reason, at Replit we built an infrastructure that leverages some of the richest coding data in the industry.]]></description><link>https://replit-engineering-blog.pages.dev/how-replit-makes-sense-of-code-at-scale-ai-data</link><guid>https://replit-engineering-blog.pages.dev/how-replit-makes-sense-of-code-at-scale-ai-data</guid><pubDate>Wed, 14 Aug 2024 22:52:33 GMT</pubDate></item><item><title><![CDATA[Improved Dependency Management]]></title><description><![CDATA[We recently revamped the dependency management experience in your Replit workspace. You can now use and configure multiple languages in one Repl. We’ve consolidated language support, packages, and system dependencies into one new Dependencies pane for beginners and experienced developers alike!]]></description><link>https://replit-engineering-blog.pages.dev/improved-dependency-management</link><guid>https://replit-engineering-blog.pages.dev/improved-dependency-management</guid><pubDate>Mon, 01 Jul 2024 16:18:22 GMT</pubDate></item><item><title><![CDATA[Advanced port configuration]]></title><description><![CDATA[We recently spent a few months making ports easier to work with on Replit, so you can develop more complex apps predictably.]]></description><link>https://replit-engineering-blog.pages.dev/ports</link><guid>https://replit-engineering-blog.pages.dev/ports</guid><pubDate>Fri, 05 Apr 2024 15:00:00 GMT</pubDate></item><item><title><![CDATA[Searching Nixpkgs in Under 30 Milliseconds]]></title><description><![CDATA[Today, we’re releasing the first version of rippkgs, a CLI utility for indexing and searching Nix expressions. With rippkgs, you can quickly search the nixpkgs available to your system with accurate results. Read on for more details about why we created it, how to use it, and how it works.]]></description><link>https://replit-engineering-blog.pages.dev/nixpkgs-search</link><guid>https://replit-engineering-blog.pages.dev/nixpkgs-search</guid><pubDate>Fri, 29 Mar 2024 15:39:44 GMT</pubDate></item><item><title><![CDATA[Replit + pip ]]></title><description><![CDATA[We’re thrilled to announce that first-class pip support is now available on Replit! This should work out-of-the-box when importing existing repositories from GitHub. For developers who want to switch from poetry to pip: start by deleting poetry.lock, then move your dependencies over from [tool.poetry.dependencies] to requirements.txt (structure hint: flask = "^3.0.2" would become flask>=3.0.2,<4 in requirements.txt), and finally, delete the other [tool.poetry...] sections from pyproject.toml. After that, the packaging infrastructure will use pip for all future operations going forward.]]></description><link>https://replit-engineering-blog.pages.dev/pip</link><guid>https://replit-engineering-blog.pages.dev/pip</guid><pubDate>Thu, 15 Feb 2024 17:00:00 GMT</pubDate></item><item><title><![CDATA[Easier Editing for .replit Files]]></title><description><![CDATA[At Replit, we want to make it easy to support any project configuration possible. This includes ensuring your binaries are in the right place and intelligent code completion works. Historically, the .replit file has been at the center of this, but the experience of editing the file is a process shrouded in mystery. While documentation exists for the file and what various configurations imply, it’s much more convenient if the documentation is visible inside the Workspace.]]></description><link>https://replit-engineering-blog.pages.dev/replitfile</link><guid>https://replit-engineering-blog.pages.dev/replitfile</guid><pubDate>Tue, 06 Feb 2024 16:00:00 GMT</pubDate></item><item><title><![CDATA[Landscape or Portrait? You Decide]]></title><description><![CDATA[People have expected apps to rotate with their mobile devices since before the introduction of the iPhone in 2007. It’s especially important for productivity apps to adapt and let people choose how they want to utilize their screen space. With the newest version of the Replit Mobile App, you can now code in both landscape and portrait modes. This creates a significantly improved experience on smaller tablets like the iPad mini or larger phones like the Pixel Fold. Want to code on the go with your iPad mini? Simply rotate it to portrait, then later, when you’re home, connect it to your wireless mouse & keyboard and rotate it to landscape for maximal screen space. This is the first of many more improvements to the Replit Mobile App, unlocking your ability to build and launch your next startup from your phone.]]></description><link>https://replit-engineering-blog.pages.dev/rotation-on-mobile</link><guid>https://replit-engineering-blog.pages.dev/rotation-on-mobile</guid><pubDate>Thu, 28 Dec 2023 17:00:00 GMT</pubDate></item><item><title><![CDATA[Dec 12 Incident Update: Secrets and repl.co Static Hosting Unavailable]]></title><description><![CDATA[Between Dec 12 and Dec 16, Secrets in interactive Repls and files in our legacy repl.co static hosting were unavailable. The root cause was a configuration push to GCS storage that was misinterpreted as a request for all the files to be evicted from storage. Deployments and Secrets in Deployments were unaffected. We have since recovered all known user Secrets and instituted new data retention procedures in our storage systems to ensure that this issue doesn’t reoccur. This will allow us to have a faster recovery going forward. This post summarizes what happened and what we're doing to improve Replit so that this does not happen again.]]></description><link>https://replit-engineering-blog.pages.dev/dec-12-secrets-static-hosting</link><guid>https://replit-engineering-blog.pages.dev/dec-12-secrets-static-hosting</guid><pubDate>Thu, 21 Dec 2023 09:00:00 GMT</pubDate></item><item><title><![CDATA[GitHub x Replit Workflows: Enhancing Developer Productivity]]></title><description><![CDATA[As developers, we constantly seek tools that simplify our workflows and boost our productivity. We know that most code lives on GitHub, so we want to make running, maintaining, collaborating on, and deploying code from GitHub repositories effortless.]]></description><link>https://replit-engineering-blog.pages.dev/github</link><guid>https://replit-engineering-blog.pages.dev/github</guid><pubDate>Tue, 19 Dec 2023 17:00:00 GMT</pubDate></item><item><title><![CDATA[Skip the README, let us install for you]]></title><description><![CDATA[If you’ve ever tried to install a complex Python package, you know the pain of scouring the package’s README for the apt install or brew install commands necessary to bring in the system-level dependencies the package needs. This approach can be time-consuming and frustrating, especially when a cascade of errors indicates a missing system dependency — a pain point that isn't always immediately obvious.]]></description><link>https://replit-engineering-blog.pages.dev/system-dependencies-python</link><guid>https://replit-engineering-blog.pages.dev/system-dependencies-python</guid><pubDate>Fri, 15 Dec 2023 17:00:00 GMT</pubDate></item><item><title><![CDATA[New and Improved Console]]></title><description><![CDATA[The new Console has been launched for a while, bringing a whole new UI, persisted history of executions, metadata about the runs, and more!]]></description><link>https://replit-engineering-blog.pages.dev/new-and-improved-console</link><guid>https://replit-engineering-blog.pages.dev/new-and-improved-console</guid><pubDate>Thu, 07 Dec 2023 18:00:40 GMT</pubDate></item><item><title><![CDATA[System Dependencies on Replit]]></title><description><![CDATA[We recently released some improvements to our Packages tool, and now we're extending that work to bring a new System Dependencies tool to Replit, powered by Nix! Replit has bet big on Nix, and we're not slowing down. It's now easier than ever to leverage Nix's power with a brand-new user interface for adding, removing, and searching system dependencies.]]></description><link>https://replit-engineering-blog.pages.dev/system-dependencies-on-replit</link><guid>https://replit-engineering-blog.pages.dev/system-dependencies-on-replit</guid><pubDate>Fri, 20 Oct 2023 20:51:00 GMT</pubDate></item><item><title><![CDATA[Tabs and Spaces - Smarter Indentation]]></title><description><![CDATA[When you're programming, indentation is something you shouldn't have to think about, as an IDE should handle most of the details nowadays. With Replit, you don't have to think about what happens when you press tab. We're releasing a suite of new indentation and whitespace related features that will make the code editing experience even better.]]></description><link>https://replit-engineering-blog.pages.dev/smarter-indentation</link><guid>https://replit-engineering-blog.pages.dev/smarter-indentation</guid><pubDate>Thu, 12 Oct 2023 20:51:00 GMT</pubDate></item><item><title><![CDATA[Sep 29 Incident Update: Read-Only Repls]]></title><description><![CDATA[On Sep 29, we had a period of about 2.5h from 14:00 to 16:30 (Pacific Time), in which an incomplete build was pushed to our infrastructure that handles storing Repl data. This caused Repls opened during that time window to become read-only or stop working. Any Repl not opened during that timeframe was not affected. We have addressed the root cause, recovered 98% of the affected Repls, and continue to work on recovering the remaining 2%. We understand that your data not being available is unacceptable for both you and your users. This post summarizes what happened and what we're doing to improve Replit so that this does not happen again.]]></description><link>https://replit-engineering-blog.pages.dev/sep-29-read-only-repls</link><guid>https://replit-engineering-blog.pages.dev/sep-29-read-only-repls</guid><pubDate>Wed, 04 Oct 2023 19:43:00 GMT</pubDate></item><item><title><![CDATA[Changes to Hosting on Replit]]></title><description><![CDATA[We remain committed to providing a powerful free development experience to anyone who wants to code. This post is only about the hosting experience, which we are migrating to our new Deployments product.]]></description><link>https://replit-engineering-blog.pages.dev/hosting-changes</link><guid>https://replit-engineering-blog.pages.dev/hosting-changes</guid><pubDate>Thu, 28 Sep 2023 19:43:00 GMT</pubDate></item><item><title><![CDATA[Upgrading Analytics for Deployments]]></title><description><![CDATA[Upgrading Analytics for Deployments]]></description><link>https://replit-engineering-blog.pages.dev/deployments-analytics</link><guid>https://replit-engineering-blog.pages.dev/deployments-analytics</guid><pubDate>Mon, 28 Aug 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Packages: Powered Up]]></title><description><![CDATA[Packages: Powered Up]]></description><link>https://replit-engineering-blog.pages.dev/packages-powered-up</link><guid>https://replit-engineering-blog.pages.dev/packages-powered-up</guid><pubDate>Fri, 25 Aug 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Performance Mystery: Is Golang's Startup Time Slow?]]></title><description><![CDATA[Performance Mystery: Is Golang's Startup Time Slow?]]></description><link>https://replit-engineering-blog.pages.dev/golang-performance</link><guid>https://replit-engineering-blog.pages.dev/golang-performance</guid><pubDate>Fri, 18 Aug 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Improving the Inline Ghostwriter Experience]]></title><description><![CDATA[Improving the Inline Ghostwriter Experience]]></description><link>https://replit-engineering-blog.pages.dev/ghostwriter-inline</link><guid>https://replit-engineering-blog.pages.dev/ghostwriter-inline</guid><pubDate>Fri, 11 Aug 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Expand possibilities on Replit with Expandable Storage]]></title><description><![CDATA[Expand possibilities on Replit with Expandable Storage]]></description><link>https://replit-engineering-blog.pages.dev/expandable-storage</link><guid>https://replit-engineering-blog.pages.dev/expandable-storage</guid><pubDate>Tue, 08 Aug 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Why We Changed Our Resource Limits and Plans]]></title><description><![CDATA[Why We Changed Our Resource Limits and Plans]]></description><link>https://replit-engineering-blog.pages.dev/new-limits-and-plans</link><guid>https://replit-engineering-blog.pages.dev/new-limits-and-plans</guid><pubDate>Mon, 07 Aug 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Fewer Restarts and Faster Networking for All]]></title><description><![CDATA[Fewer Restarts and Faster Networking for All]]></description><link>https://replit-engineering-blog.pages.dev/faster-networking</link><guid>https://replit-engineering-blog.pages.dev/faster-networking</guid><pubDate>Fri, 04 Aug 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Rebuilding the Replit Filetree for Superior Performance and Accessibility]]></title><description><![CDATA[Rebuilding the Replit Filetree for Superior Performance and Accessibility]]></description><link>https://replit-engineering-blog.pages.dev/filetree-updates</link><guid>https://replit-engineering-blog.pages.dev/filetree-updates</guid><pubDate>Tue, 01 Aug 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Replit Deployments: 3x Faster and Even More Features]]></title><description><![CDATA[In April, we released Replit Deployments, the fastest way to go from software idea to production. We rebuilt our application hosting infrastructure for production-grade applications thanks to your feedback. In this post, we’ll highlight upgrades, bug fixes, and improvements to Deployments since initial release in April.]]></description><link>https://replit-engineering-blog.pages.dev/deployments-updates</link><guid>https://replit-engineering-blog.pages.dev/deployments-updates</guid><pubDate>Mon, 31 Jul 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Replit Storage: The Next Generation]]></title><description><![CDATA[Repls today allow 256+ GiB of storage space, up from a historical 1GiB limit. This post is about the infrastructure that enabled that change.]]></description><link>https://replit-engineering-blog.pages.dev/replit-storage-the-next-generation</link><guid>https://replit-engineering-blog.pages.dev/replit-storage-the-next-generation</guid><pubDate>Wed, 19 Jul 2023 23:00:00 GMT</pubDate></item><item><title><![CDATA[The Journey To Code Search]]></title><description><![CDATA[The Journey To Code Search]]></description><link>https://replit-engineering-blog.pages.dev/the-journey-to-code-search</link><guid>https://replit-engineering-blog.pages.dev/the-journey-to-code-search</guid><pubDate>Sun, 25 Jun 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[June 6, 2023, Single-Sign-On Security Vulnerability]]></title><description><![CDATA[Earlier today, we emailed users about a security vulnerability affecting parts of our single-sign-on functionality. While we’ve fixed the vulnerability and have found no evidence of any exploit, we are publishing this post out of transparency.]]></description><link>https://replit-engineering-blog.pages.dev/june-6-sso-security-vulnerability</link><guid>https://replit-engineering-blog.pages.dev/june-6-sso-security-vulnerability</guid><pubDate>Mon, 12 Jun 2023 12:00:00 GMT</pubDate></item><item><title><![CDATA[Configurable Keybindings for the Workspace]]></title><description><![CDATA[Configurable Keybindings for the Workspace]]></description><link>https://replit-engineering-blog.pages.dev/configurable-keybindings-for-the-workspace</link><guid>https://replit-engineering-blog.pages.dev/configurable-keybindings-for-the-workspace</guid><pubDate>Tue, 30 May 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Super Colliding Nix Stores: Nix Flakes for Millions of Developers]]></title><description><![CDATA[Super Colliding Nix Stores: Nix Flakes for Millions of Developers]]></description><link>https://replit-engineering-blog.pages.dev/super-colliding-nix-stores</link><guid>https://replit-engineering-blog.pages.dev/super-colliding-nix-stores</guid><pubDate>Thu, 25 May 2023 17:40:00 GMT</pubDate></item><item><title><![CDATA[Making Git Good]]></title><description><![CDATA[Making Git Good]]></description><link>https://replit-engineering-blog.pages.dev/git-good</link><guid>https://replit-engineering-blog.pages.dev/git-good</guid><pubDate>Mon, 15 May 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Announcing Replit Extensions]]></title><description><![CDATA[Announcing Replit Extensions]]></description><link>https://replit-engineering-blog.pages.dev/extensions</link><guid>https://replit-engineering-blog.pages.dev/extensions</guid><pubDate>Mon, 01 May 2023 17:00:00 GMT</pubDate></item><item><title><![CDATA[How to train your own Large Language Models]]></title><description><![CDATA[Learn how Replit trains Large Language Models (LLMs) using Databricks, Hugging Face, and MosaicML]]></description><link>https://replit-engineering-blog.pages.dev/llm-training</link><guid>https://replit-engineering-blog.pages.dev/llm-training</guid><pubDate>Wed, 19 Apr 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Replit Deployments - the fastest way from idea → production]]></title><description><![CDATA[Replit Deployments - the fastest way from idea → production]]></description><link>https://replit-engineering-blog.pages.dev/deployments-launch</link><guid>https://replit-engineering-blog.pages.dev/deployments-launch</guid><pubDate>Wed, 12 Apr 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Hackers, Pros, and Teams users can now code for hours without restarts]]></title><description><![CDATA[Hackers, Pros, and Teams users can now code for hours without restarts]]></description><link>https://replit-engineering-blog.pages.dev/regular-vms</link><guid>https://replit-engineering-blog.pages.dev/regular-vms</guid><pubDate>Thu, 06 Apr 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[April 2 Potential GitHub Credentials Exposure]]></title><description><![CDATA[Yesterday, on April 2, 2023, Replit discovered a site vulnerability that may have exposed GitHub auth tokens for <0.01% of Replit users, stemming from use of the GitHub import feature. This could have permitted unauthorized read/write access to all the repositories of those users by default (users can choose to authorize just a subset of repositories).]]></description><link>https://replit-engineering-blog.pages.dev/april-02-potential-github-credentials-exposure</link><guid>https://replit-engineering-blog.pages.dev/april-02-potential-github-credentials-exposure</guid><pubDate>Tue, 04 Apr 2023 02:00:00 GMT</pubDate></item><item><title><![CDATA[Announcing Outbound Data Transfer Limits]]></title><description><![CDATA[Beginning April 7th, Replit will begin enforcing limits on the amount of outbound data that developers can transmit from their Repls to users and external services. Inbound data transfer is free.]]></description><link>https://replit-engineering-blog.pages.dev/announcing-outbound-data-transfer-limits</link><guid>https://replit-engineering-blog.pages.dev/announcing-outbound-data-transfer-limits</guid><pubDate>Wed, 22 Mar 2023 14:45:00 GMT</pubDate></item><item><title><![CDATA[Worldwide Repls, part 3: Firing Up The Engines]]></title><description><![CDATA[Worldwide Repls, part 3: Firing Up The Engines]]></description><link>https://replit-engineering-blog.pages.dev/geo-part-3-deploy</link><guid>https://replit-engineering-blog.pages.dev/geo-part-3-deploy</guid><pubDate>Thu, 16 Mar 2023 16:00:00 GMT</pubDate></item><item><title><![CDATA[Remote Access to Your Repls via SSH]]></title><description><![CDATA[Last week we announced the Pro plan to speed up your development with Replit's AI tools and an even more powerful Workspace.]]></description><link>https://replit-engineering-blog.pages.dev/ssh</link><guid>https://replit-engineering-blog.pages.dev/ssh</guid><pubDate>Thu, 02 Mar 2023 20:00:00 GMT</pubDate></item><item><title><![CDATA[Replit x Weights & Biases Machine Learning Hackathon Winners]]></title><description><![CDATA[Replit x Weights & Biases Machine Learning Hackathon Winners]]></description><link>https://replit-engineering-blog.pages.dev/ml-hackathon-winners</link><guid>https://replit-engineering-blog.pages.dev/ml-hackathon-winners</guid><pubDate>Tue, 21 Feb 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Apply for Replit’s first Machine Learning Hackathon]]></title><description><![CDATA[Apply for Replit’s first Machine Learning Hackathon]]></description><link>https://replit-engineering-blog.pages.dev/ml-hackathon</link><guid>https://replit-engineering-blog.pages.dev/ml-hackathon</guid><pubDate>Wed, 11 Jan 2023 00:00:00 GMT</pubDate></item><item><title><![CDATA[Making Repl Identity More Accessible]]></title><description><![CDATA[In August last year, we announced Repl Identity, a signed identity for every Repl that your code can use to authenticate other Repls when communicating with your APIs and services.]]></description><link>https://replit-engineering-blog.pages.dev/repl-identity-via-cli</link><guid>https://replit-engineering-blog.pages.dev/repl-identity-via-cli</guid><pubDate>Tue, 10 Jan 2023 22:00:00 GMT</pubDate></item><item><title><![CDATA[Redesigning Cycles Transaction History]]></title><description><![CDATA[Redesigning Cycles Transaction History]]></description><link>https://replit-engineering-blog.pages.dev/cycles-transaction-history</link><guid>https://replit-engineering-blog.pages.dev/cycles-transaction-history</guid><pubDate>Fri, 23 Dec 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[Branching out the Filetree]]></title><description><![CDATA[The filetree is a central surface of the workspace which has long been under-leveraged to support the workflows of users. As part of our ongoing workspace revamp, we're shipping improvements to make the filetree more usable and powerful. These improvements include:]]></description><link>https://replit-engineering-blog.pages.dev/filetree</link><guid>https://replit-engineering-blog.pages.dev/filetree</guid><pubDate>Mon, 14 Nov 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[Replit Mobile App]]></title><description><![CDATA[Replit Mobile App]]></description><link>https://replit-engineering-blog.pages.dev/mobile-app</link><guid>https://replit-engineering-blog.pages.dev/mobile-app</guid><pubDate>Wed, 19 Oct 2022 08:00:00 GMT</pubDate></item><item><title><![CDATA[Worldwide Repls, part 2: Load balancing for fun (although not quite profit)]]></title><description><![CDATA[In our previous blog post about Worldwide Repls, we talked about how we revamped part of our infrastructure to build a new abstraction that allowed us to build other components on top of it: the control plane. In this entry, we'll talk about the very first thing we built on top: a load balancer.]]></description><link>https://replit-engineering-blog.pages.dev/geo-part-2-loadbalancing</link><guid>https://replit-engineering-blog.pages.dev/geo-part-2-loadbalancing</guid><pubDate>Fri, 23 Sep 2022 18:00:00 GMT</pubDate></item><item><title><![CDATA[History++ - A Better Way to Do Versioning]]></title><description><![CDATA[Have you ever had to start over on a piece of code because you overwrote something by accident? Made an edit, replaced it, and then wished you could go back?]]></description><link>https://replit-engineering-blog.pages.dev/history2-release</link><guid>https://replit-engineering-blog.pages.dev/history2-release</guid><pubDate>Thu, 15 Sep 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[Zero-Click Auth For Your Apps]]></title><description><![CDATA[Picture this: you've built an arcade game on Replit. Gamers playing your game will head to the repl's cover page and click "Run". They love your game, and they send you feature requests and ideas in the comments. Now, you want to keep track of high scores and add other social features to your game. This used to be a show-stopper: there was no way to verify the API requests coming in, so your high-score feature was either easy to spoof, or simply didn't get off the ground.]]></description><link>https://replit-engineering-blog.pages.dev/repl-identity</link><guid>https://replit-engineering-blog.pages.dev/repl-identity</guid><pubDate>Tue, 02 Aug 2022 16:00:00 GMT</pubDate></item><item><title><![CDATA[Get Replit Famous]]></title><description><![CDATA[Get Replit Famous]]></description><link>https://replit-engineering-blog.pages.dev/replit-famous</link><guid>https://replit-engineering-blog.pages.dev/replit-famous</guid><pubDate>Thu, 28 Jul 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[Revamping the GitHub Import Flow]]></title><description><![CDATA[Early last year, we made the announcement that our infrastructure and Repls now had Nix baked in. Just a few months ago, we announced all new Repls would be Nix-based. And today, we're happy to announce that our GitHub imports flow is now also powered by Nix!]]></description><link>https://replit-engineering-blog.pages.dev/nix-github-imports</link><guid>https://replit-engineering-blog.pages.dev/nix-github-imports</guid><pubDate>Thu, 21 Jul 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[Inspect your HTML/CSS/JS Repls with native DevTools]]></title><description><![CDATA[We recently launched a new Replit-native way to inspect and debug web pages you build on Replit. Whether you're learning the basics or hosting a rich application, quickly being able to inspect the console and DOM is critical to your workflow.]]></description><link>https://replit-engineering-blog.pages.dev/devtools</link><guid>https://replit-engineering-blog.pages.dev/devtools</guid><pubDate>Fri, 15 Jul 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[Leaky UIs]]></title><description><![CDATA[Building a robust and powerful UI without compromising on simplicity is complicated, and we're always exploring solutions that alleviate that problem. A few years ago, we rewrote our workspace architecture, and Amjad gave a talk about it. We're about to add a lot of firepower to our layout system (stay tuned!), but we noticed significant shortcomings in our abstractions. This blog post will outline the flaws and how the underlying data structure hurt the interactions. To keep this post concise, I will defer the reasoning behind the UI and UX to a future post.]]></description><link>https://replit-engineering-blog.pages.dev/leaky-uis</link><guid>https://replit-engineering-blog.pages.dev/leaky-uis</guid><pubDate>Wed, 13 Jul 2022 00:30:00 GMT</pubDate></item><item><title><![CDATA[Worldwide Repls, part 1: The Control Plane]]></title><description><![CDATA[During the ReplCon 2022 keynote, we announced that we were going to geo-distribute our infrastructure so that your Repls are much faster when accessed outside of the United States. The speed of electrons / light in a medium is a fundamental speed limit. Most of our users are several thousand kilometers away from the data centers where we host Repls (currently limited to the United States), so the round trip from them to the users' homes is going to necessarily take several hundred milliseconds just to traverse the series of tubes that is the Internet. Today, we have finished the first milestone to make this a reality, and that comes with some pretty neat side-effects!]]></description><link>https://replit-engineering-blog.pages.dev/geo-part-1-controlplane</link><guid>https://replit-engineering-blog.pages.dev/geo-part-1-controlplane</guid><pubDate>Fri, 08 Jul 2022 17:00:00 GMT</pubDate></item><item><title><![CDATA[Improving Domain Linking for Repls]]></title><description><![CDATA[For some time now, it's been possible to link your custom domain to your Repl. You buy that perfect domain name, connect it to your website hosted on Replit, and you're good to go! Custom domains help you create a unique home on the internet - for your blog, a product you're launching, or just a space to try new ideas.]]></description><link>https://replit-engineering-blog.pages.dev/improved-domain-linking</link><guid>https://replit-engineering-blog.pages.dev/improved-domain-linking</guid><pubDate>Mon, 04 Jul 2022 16:00:00 GMT</pubDate></item><item><title><![CDATA[QLTY SZN 1]]></title><description><![CDATA[A commitment to quality]]></description><link>https://replit-engineering-blog.pages.dev/qlty-szn</link><guid>https://replit-engineering-blog.pages.dev/qlty-szn</guid><pubDate>Mon, 18 Apr 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[We Built a Search Engine]]></title><description><![CDATA[For the past few months, we have been building a Replit-native search engine. It is remarkably powerful, and we are really excited for you all to try it out. We believe that you should be able to find anything on Replit in less than 30 seconds.]]></description><link>https://replit-engineering-blog.pages.dev/search</link><guid>https://replit-engineering-blog.pages.dev/search</guid><pubDate>Thu, 31 Mar 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[Escaping Dirty Pipe (a.k.a. CVE-2022-0847), mostly unscathed]]></title><description><![CDATA[You may have heard that there was a very critical Linux kernel vulnerability making the rounds. As with all important enough vulnerabilities, this one has a catchy name: Dirty Pipe (no logo, though). This blogpost attempts to explain how that vulnerability impacted Replit. The good news is that as far as we know, there weren't any successful exploitations of it!]]></description><link>https://replit-engineering-blog.pages.dev/dirtypipe-kernel-vulnerability</link><guid>https://replit-engineering-blog.pages.dev/dirtypipe-kernel-vulnerability</guid><pubDate>Wed, 16 Mar 2022 18:00:00 GMT</pubDate></item><item><title><![CDATA[Betting on CodeMirror]]></title><description><![CDATA[At Replit, our mission is to bring the next billion software creators online. In order to achieve that ambitious goal, we need to make sure that the experience of writing, running, and sharing code is as seamless as possible. At the heart of that experience is the editor itself. As a result, we dedicate a huge amount of time and energy to improving the stability, performance, and accessibility of our editor.]]></description><link>https://replit-engineering-blog.pages.dev/codemirror</link><guid>https://replit-engineering-blog.pages.dev/codemirror</guid><pubDate>Thu, 10 Mar 2022 00:00:00 GMT</pubDate></item><item><title><![CDATA[All New Repls are Powered By Nix]]></title><description><![CDATA[For the past year we have been working hard to integrate Nix into our platform and rebuild our existing language experiences with package from Nix. We are excited to announce that all new repls are now powered by Nix. In this post we'll talk about what this means for the future of the platform and all the work that it took to get here.]]></description><link>https://replit-engineering-blog.pages.dev/powered-by-nix</link><guid>https://replit-engineering-blog.pages.dev/powered-by-nix</guid><pubDate>Wed, 23 Feb 2022 17:00:00 GMT</pubDate></item><item><title><![CDATA[Announcing File Persistence in Hosted Apps… for Everyone!]]></title><description><![CDATA[Replit is your computer — for whatever you need to do. We announced last year that Hackers would be able to have their hosted apps be able to persist file changes since that made it possible to build a lot more apps. But we were not quite satisfied that only Hackers were going to get this new feature.]]></description><link>https://replit-engineering-blog.pages.dev/filesystem-persistence-for-all</link><guid>https://replit-engineering-blog.pages.dev/filesystem-persistence-for-all</guid><pubDate>Fri, 11 Feb 2022 19:45:00 GMT</pubDate></item><item><title><![CDATA[Making new Python repls 100x faster to start up]]></title><description><![CDATA[Python is currently the world's (and Replit's) most popular programming language. We've improved the Python experience during last year, with a Python package cache to make installs faster, and an integrated, multiplayer debugger to increase the understanding of what programs do. But there are still a few problems with Python. Packages are often very space-consuming, so they are installed into an ephemeral 2 GiB scratch disk to avoid filling up repl directories. Unfortunately this means that every time a Python repl starts, a lengthy package installation process must happen. This makes some Python repls take forever to start! Some other packages that have a large number of dependencies (like TensorFlow and Torch) were completely unusable because they don't even fit on the scratch directory.]]></description><link>https://replit-engineering-blog.pages.dev/python-new-template</link><guid>https://replit-engineering-blog.pages.dev/python-new-template</guid><pubDate>Fri, 04 Feb 2022 19:45:00 GMT</pubDate></item><item><title><![CDATA[Understanding Repl Resource Utilization]]></title><description><![CDATA[Every computer on earth needs these three essential resources in some form:]]></description><link>https://replit-engineering-blog.pages.dev/repl-resources</link><guid>https://replit-engineering-blog.pages.dev/repl-resources</guid><pubDate>Mon, 31 Jan 2022 20:00:00 GMT</pubDate></item><item><title><![CDATA[Going Where the Next Billion Creators Are]]></title><description><![CDATA[Mobile is the future of computing. But building good software creation tools for mobile devices is hard. Luckily, at Replit, we like to run toward the hard things.]]></description><link>https://replit-engineering-blog.pages.dev/mobile-v2</link><guid>https://replit-engineering-blog.pages.dev/mobile-v2</guid><pubDate>Fri, 21 Jan 2022 08:00:00 GMT</pubDate></item><item><title><![CDATA[Migrating our Web App from Heroku to GCP]]></title><description><![CDATA[After many years of running on Heroku, Replit has fully migrated to Google Cloud Platform.]]></description><link>https://replit-engineering-blog.pages.dev/heroku2gcp</link><guid>https://replit-engineering-blog.pages.dev/heroku2gcp</guid><pubDate>Tue, 11 Jan 2022 20:00:00 GMT</pubDate></item><item><title><![CDATA[Implementing RUI, Replit's Design System]]></title><description><![CDATA[At Replit, we have a small engineering and design team supporting millions of users. Our secret is investing in good tools that make us more productive. In this blog post we'll give you an insider look into how we implemented one such tool - the Replit design system (or RUI for short).]]></description><link>https://replit-engineering-blog.pages.dev/rui-eng</link><guid>https://replit-engineering-blog.pages.dev/rui-eng</guid><pubDate>Thu, 23 Dec 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Repl Space and Templates]]></title><description><![CDATA[When we want to support a new technology, we're faced with the question: "Do we (the Replit team) build this capability into the Replit directly, or can our users add it themselves?". Usually, we want the answer to be the latter. Repls are like personal computers for your projects. And the more these personal computers can be customized, the more they'll be used in creative, unexpected ways.]]></description><link>https://replit-engineering-blog.pages.dev/replspace-templates</link><guid>https://replit-engineering-blog.pages.dev/replspace-templates</guid><pubDate>Wed, 15 Dec 2021 05:00:00 GMT</pubDate></item><item><title><![CDATA[Ace, CodeMirror, and Monaco: A Comparison of the Code Editors You Use in the Browser]]></title><description><![CDATA[We compare and contrast the top code editors that you use in your browser.]]></description><link>https://replit-engineering-blog.pages.dev/code-editors</link><guid>https://replit-engineering-blog.pages.dev/code-editors</guid><pubDate>Tue, 14 Dec 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Will Nix Overtake Docker?]]></title><description><![CDATA[In many discussions about Nix, the comparison of Nix and Docker comes up frequently. This question could be dismissed by saying that Nix and Docker are different tools that solve different problems. One is a toolkit for building and deploying containers and the other is a package and configuration manager. However, these tools do have some overlap: they can both be used to create reproducible environments. A reproducible environment is one that can be recreated from scratch in an identical way (ideally bit-for-bit). Practically, this means having the same tools, versions, and configuration between the environments.]]></description><link>https://replit-engineering-blog.pages.dev/nix-vs-docker</link><guid>https://replit-engineering-blog.pages.dev/nix-vs-docker</guid><pubDate>Mon, 29 Nov 2021 20:00:00 GMT</pubDate></item><item><title><![CDATA[How to Set Up Your Own Mastodon Instance with Replit]]></title><description><![CDATA[With many development tools and even whole development environments moving to the cloud, Replit is at the forefront of this change.]]></description><link>https://replit-engineering-blog.pages.dev/setting-up-a-mastodon</link><guid>https://replit-engineering-blog.pages.dev/setting-up-a-mastodon</guid><pubDate>Mon, 22 Nov 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Announcing File Persistence in Hosted Apps for Hackers]]></title><description><![CDATA[We mostly think of repls as being full computers in the cloud, and one of the goals of the platform team at Replit is to enable people to build almost anything in replspace. In the past, when a file was stored in a repl, it would only be saved when the editor was opened. This went against our goal and made it impossible to write certain servers that changed files at runtime. This was especially hard for newcomers, because that's the easiest way to persist information. Starting today, Hacker and Teams subscribers will be able to write services that accept file uploads or store data in a local database (think SQLite) or text file, regardless of how the repl was started.]]></description><link>https://replit-engineering-blog.pages.dev/replspace-filesystems</link><guid>https://replit-engineering-blog.pages.dev/replspace-filesystems</guid><pubDate>Thu, 11 Nov 2021 21:30:00 GMT</pubDate></item><item><title><![CDATA[Betting on Nix: donating $25K to the NixOS Foundation]]></title><description><![CDATA[As building software grows more like snapping Legos together, how people find and use those Legos becomes more important. That's why we are donating $25,000 to the NixOS Foundation and betting on Nix as the future of software distribution.]]></description><link>https://replit-engineering-blog.pages.dev/betting-on-nix</link><guid>https://replit-engineering-blog.pages.dev/betting-on-nix</guid><pubDate>Mon, 25 Oct 2021 00:06:40 GMT</pubDate></item><item><title><![CDATA[Solidity on Replit: Diving into Web3]]></title><description><![CDATA[Today, we're announcing our official Solidity development template. Solidity is the language used to create smart contracts, which are programs that run on the Ethereum blockchain. This is important for the Web3 commmunity because there's finally an accessible and collaborative way to learn Solidity, which will unlock thousands of new developers in the decentralized web.]]></description><link>https://replit-engineering-blog.pages.dev/solidity</link><guid>https://replit-engineering-blog.pages.dev/solidity</guid><pubDate>Thu, 14 Oct 2021 00:06:40 GMT</pubDate></item><item><title><![CDATA[A New Code Editor for Mobile - CodeMirror 6]]></title><description><![CDATA[Today, we are thrilled to announce CodeMirror as the new code editor on Replit for mobile devices. CodeMirror is a versatile code editor that has been specifically designed with mobile in mind, providing an excellent touchscreen experience. This change is the beginning of a focused effort on mobile development here at Replit; the editor is just the first step! The editor supports all the features you expect from a code editor, and we're working on making it even more powerful.]]></description><link>https://replit-engineering-blog.pages.dev/codemirror-mobile</link><guid>https://replit-engineering-blog.pages.dev/codemirror-mobile</guid><pubDate>Tue, 21 Sep 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[The Internet of Fun]]></title><description><![CDATA[Yesterday, I accidentally built a chat app. Surprisingly, it wasn't the first time it happened.]]></description><link>https://replit-engineering-blog.pages.dev/internet-of-fun</link><guid>https://replit-engineering-blog.pages.dev/internet-of-fun</guid><pubDate>Tue, 02 Feb 2021 05:00:00 GMT</pubDate></item><item><title><![CDATA[We've Been Pwned]]></title><description><![CDATA[As long as I can remember Replit has been receiving a large number of vulnerability reports. We're very grateful for these and take them extremely seriously. However, 99% of them stem from a misunderstanding of what we do. Our main product is RCE (remote code execution) and naturally this leads to a whole lot of RCE vulnerability reports.]]></description><link>https://replit-engineering-blog.pages.dev/pwnd</link><guid>https://replit-engineering-blog.pages.dev/pwnd</guid><pubDate>Thu, 03 Dec 2020 05:00:00 GMT</pubDate></item><item><title><![CDATA[Don't Let Your Development Environment Rot]]></title><description><![CDATA[Most systems -- both natural and artificial -- decay, rot, and eventually die. Software is no different. A lot has been written about fighting "software rot" but there's another type of rot related to software that's not talked about much -- the development environment rot.]]></description><link>https://replit-engineering-blog.pages.dev/rot</link><guid>https://replit-engineering-blog.pages.dev/rot</guid><pubDate>Mon, 04 Jun 2018 07:00:00 GMT</pubDate></item><item><title><![CDATA[Building Towards a Holistic Development Service]]></title><description><![CDATA[Software development is one of the first -- if not the first -- examples of what J. C. Licklider called the Man-Computer Symbiosis. A "cooperative interaction" between people and computers where the person is concerned in what may be classified as the creative aspect of the work such as setting the goals, formulating the hypothesis and evaluating the results while the computer does all the "routinizable work".]]></description><link>https://replit-engineering-blog.pages.dev/holistic</link><guid>https://replit-engineering-blog.pages.dev/holistic</guid><pubDate>Mon, 27 Mar 2017 07:00:00 GMT</pubDate></item><item><title><![CDATA[Learning Devops & AWS on the Job: Building and Scaling a Service]]></title><description><![CDATA[Learning Devops & AWS on the Job: Building and Scaling a Service]]></description><link>https://replit-engineering-blog.pages.dev/aws-simple-guide</link><guid>https://replit-engineering-blog.pages.dev/aws-simple-guide</guid><pubDate>Mon, 14 Nov 2016 08:00:00 GMT</pubDate></item><item><title><![CDATA[API Docs]]></title><description><![CDATA[[Update Oct 2022: We have retired our API, we are excited by our previous work but we do not have the resources to support this at the moment.]]]></description><link>https://replit-engineering-blog.pages.dev/api-docs</link><guid>https://replit-engineering-blog.pages.dev/api-docs</guid><pubDate>Fri, 24 Jun 2016 07:00:00 GMT</pubDate></item><item><title><![CDATA[Engineering Blog Kitchen Sink]]></title><description><![CDATA[The permanent reference page for every supported technical content format.]]></description><link>https://replit-engineering-blog.pages.dev/engineering-blog-kitchen-sink</link><guid>https://replit-engineering-blog.pages.dev/engineering-blog-kitchen-sink</guid><pubDate>Fri, 21 Aug 2015 09:00:00 GMT</pubDate></item></channel></rss>