Fri, Jul 19, 2024Introducing Replit Projects
We’re excited to announce Projects for Replit, a new way to collaborate with your team. This feature is in beta now, available to all Replit Teams customers. Projects let you maintain multiple versions of your team’s codebase and easily merge your changes together when you’re ready. Anyone on your team can “fork” (create a new copy of the code), make changes, preview what changed, and then merge those changes back into the main version with a few clicks. If you weren’t using Replit, it might take a new teammate hours to set up their local development environment, make their changes correctly, and get their code reviewed and merged. Why use Projects? As a team writing software, collaboration is important. Realtime coding or pair programming is useful, but sometimes you need your own space to work. If your whole team was working on their ideas in a realtime session at the same time, one person writing some invalid code would stop everyone else from being able to test their own code. And sometimes, you might want to test out an idea without knowing for sure if it’s the right approach, and be ready to scrap it if it doesn't work out.
Tue, Jul 16, 2024Introducing Replit Teams
In today's fast-paced work environment, using real-time collaboration tools like Google Docs and Figma comes naturally to most of us. As a result, we've come to expect a lot more from our tools. Yet, when it comes to building software, we often find ourselves stuck with tools built for a different era — tools that cause our teams to feel siloed, inefficient, and less collaborative overall. In decades past, the software development lifecycle looked like a rigid industrial process: product managers would hand off documents to designers, and designers would hand off mock-ups to engineers. Today, however, the process is much more fluid and cross-functional. Engineers contribute to design, product managers prototype, and designers code. Still, engineering tools have remained inaccessible to everyone except engineers, preventing meaningful contributions from other roles, and slowing everyone down. This led us to wonder: What would it look like to design software collaboration tools that truly meet the changing needs of 21st-century teams? Introducing Replit Teams Go from idea to software faster than ever before. Today, we’re announcing that Replit Teams is generally available and here to set a new standard for building software.
Mon, Jul 15, 2024SkillsEngine: Accelerating product & design with Replit Teams
Replit Teams transformed the SkillsEngine Product and Design team from a traditional no-code department to a prolific team that writes, shares, and ships code. In the process, the team unblocked engineering bottlenecks, improved prototype fidelity, shipped faster, and saved thousands of dollars and resources. "I have tried every no-code tool and AI app. I have been coding for nearly 15 years now. Nothing has sparked the creative code output that Replit has for me. I have coded more in the past 12 months than the previous 10 years because it makes it so easy to get started and just try stuff. We can just focus on building ideas.” - Max Miner, Executive Director of Product and Design SkillsEngine overview SkillsEngine develops data services and tools for employers, educators, and workforce interests. Employers use SkillsEngine data to confidently assess their workforce capabilities and hiring needs. Educators use features like skill-based job profiles to plan curricula that meet current job market needs. Challenges
Mon, Jul 1, 2024Improved Dependency Management
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! System Dependencies and Modules At Replit, we want to make it as easy as possible to spin up a project in the language of your choice without spending too much time on configuration. But, sometimes you have more specific requirements! That’s where System Modules and Dependencies come into play, under the “System” tab. We support most programming languages by bundling language servers, formatters and packagers via System Modules. For example, for Python there’s the Python Tools module, for Node.js there’s the Node.js Tools module, and so forth. If you use a template or import a project via GitHub, we do our best to automatically install the modules you need. If you want to use additional languages, you can simply add Modules that suit your needs. Under the hood, system modules are powered by Nix.
Thu, Jun 6, 2024Announcing Replit Guides
Today, we are launching our first version of Replit Guides. Guides provide end-to-end content for learning new skills and building new applications. We are launching with an initial set of guides in partnership with some of the best in tech. Check out Replit Guides. Why Are We Launching Guides? Empower the next billion software creators. That’s the Replit mission. We continue to build an end-to-end development platform that allows people of all backgrounds, demographics, and skill levels to go from idea to software, fast. Platform updates and advances in our AI features are making Replit more powerful, while simultaneously lowering the barrier to entry.
Tue, May 21, 2024Using Replit to get our grandfather the daily baseball scores
A few weeks ago, I was having dinner with my in-laws, when my grandfather-in-law came marching over. I knew something was wrong. Mind you, he is not a complainer. He has a remarkable story. Born in Milwaukee. Military veteran. Worked in a meat-packing plant. Got into law school. Moved to California to teach at Stanford and practice law. Needless to say, when he has a problem, we listen. “I have a real conundrum. The SF Chronicle stopped including the baseball scores in the daily paper.”
Thu, May 2, 2024Introducing Object Storage
We’re excited to announce Replit Object Storage, a fast and durable way to persist files and other unstructured data. Object Storage ensures your data is resilient against data loss and usable across the Replit workspace and Deployments. It handles any number of processes reading and writing simultaneously, enabling your application to seamlessly add compute power and scale to handle extra requests. Our goal with Object Storage was to deliver a solution that enables you to start reading and writing files from your application as quickly as possible. We’ve designed the system to require minimal configuration and work out-of-the-box in both the workspace and Deployments. Object Storage excels at storing large amounts of unstructured data (think lots of files with varying shapes and sizes). It’s ideal for: Storing media assets such as images Persisting files uploaded by users such as PDF documents Flexible data storage that doesn’t require configuring a database such as CSV and JSON files
Fri, Apr 5, 2024Advanced port configuration
We recently spent a few months making ports easier to work with on Replit, so you can develop more complex apps predictably. What are ports? When a computer receives a TCP/UDP request, ports define which program that request should route to. (If you need a more basic explanation of TCP ports, start here). On a normal computer, you only have one layer of ports: your programs define a port that they listen to, and when traffic hits that port on your computer from the internet, it gets routed to the appropriate process. Some protocols have defined standard ports — for example, Simple Mail Transfer Protocol Secure (SMTPS), the email protocol, generally listens on port 587, and most web servers listen on either port 80 (HTTP, unencrypted) or port 443 (HTTPS, encrypted). You can think of ports like mailboxes. Imagine those big mailrooms in skyscrapers that ensure the mail lands in the right mailbox — the mail is the data being sent and received, and the mailboxes are the ports.
Wed, Apr 3, 2024Replit Developer Day recap
On April 2nd, we hosted our second annual Developer Day live from San Francisco. We announced our biggest evolution yet – we’re making the power of Replit available for teams. Here’s the full recap. Our mission Replit’s mission is to empower the next billion software creators. We are at an incredibly unique time in history, where for the first time, anyone with basic access to a computer and the internet can learn skills that can fundamentally change their lives. This kind of wealth creation opportunity has not existed before. Soon, what it means to be a software developer is going to look radically different than it does today. Replit is not just for hackers and engineers; we also want to empower builders of all kinds: artists, scientists, and citizen developers. If you have an idea, you should be able to build it and ship it. Empowerment is at the heart of our mission.
Tue, Apr 2, 2024Get early access to Replit Teams
We’re bringing the power of Replit to your team, so that you can collaborate, develop, and deploy software together. The future of collaborative software development is coming soon. We're thrilled to give a set of customers early access to what we've been working on: a new Replit Teams product that will redefine how software is made collaboratively with AI. Some highlights we’re excited about: Organizational intelligence: Unleash AI-powered code completion, chat, and retrieval-augmented generation (RAG) across your team. Ultra-fast workspaces: Access 8vCPUs and 16GB RAM machines, ensuring your team has a smooth workspace experience.
Tue, Apr 2, 2024Building LLMs for Code Repair
Introduction At Replit, we are rethinking the developer experience with AI as a first-class citizen of the development environment. Towards this vision, we are tightly integrating AI tools with our IDE. Currently, LLMs specialized for programming are trained with a mixture of source code and relevant natural languages, such as GitHub issues and StackExchange posts. These models are not trained to interact directly with the development environment and, therefore, have limited ability to understand events or use tools within Replit. We believe that by training models native to Replit, we can create more powerful AI tools for developers. A simple example of a Replit-native model takes a session event as input and returns a well-defined response. We set out to identify a scenario where we could develop a model that could also become a useful tool for our current developers and settled on code repair. Developers spend a significant fraction of their time fixing bugs in software. In 2018, when Microsoft released “A Common Protocol for Languages,” Replit began supporting the Language Server Protocol. Since then, the LSP has helped millions using Replit to find errors in their code. This puts LSP diagnostics among our most common events, with hundreds of millions per day. However, while the LSP identifies errors, it can only provide fixes in limited cases. In fact, only 10% of LSP diagnostic messages in Python projects on Replit have associated fixes. Given the abundance of training data, repairing code errors using LSP diagnostics is therefore the ideal setting to build our first Replit-native AI model. Methodology Data
Mon, Apr 1, 2024Builder Profile: Pietro Schirano
Pietro Schirano is the co-founder of EverArt. By pursuing his ideas on Replit, he’s been able to nurture a curiosity in AI into a startup with multiple apps and functions, run on Replit. After starting his career in civil engineering, Pietro wanted to explore more creative endeavors. This journey would lead him to hold design lead roles across household names like OpenTable, Meta, Uber, and Brex, and eventually, to launch his own startup. An avid social learner, Pietro picked up skills across marketing, business, and engineering in each of his jobs. One topic that particularly grabbed his attention was AI. After ChatGPT launched, Pietro says, “I had an epiphany that the world was never going to be the same.” Immediately, he started to test emerging AI tools, eventually sharing a prototype with his team at Brex that landed him a role as their AI team lead. “Replit was the easiest A to B to get people experimenting with whatever product I wanted to test.”
Mon, Apr 1, 2024Builder Profile: Mason Kim
As a Global DevOps Engineer at Zinus, Mason (Junkuk) Kim’s role is to build software to enable the marketing, business, and customer service teams to deliver their customers the highest quality support experience. Often, the required turnaround time for these projects is extremely short, and Mason will need to have a solution ready within days or even hours. Even more, the teams he is supporting are based in numerous countries around the globe. The speed at which Mason’s team can build and deploy a working web service on Replit is the primary reason he chose the platform. Zinus uses Shopify to host its e-commerce site, which they extend using an external front-end development platform. However, Mason’s team was recently tasked with switching off of their old front-end development platform and finding a new one. Their old platform caused excessively long response times to service requests from Zinus, which harmed their business. Mason had to redevelop the older web pages on the new platform in just a few weeks to ensure a smoother support process. “At that moment, no other platform but Replit came to mind, and I had limited time to complete the development. In our situation, Replit was the best choice.”
Fri, Mar 29, 2024Searching Nixpkgs in Under 30 Milliseconds
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. Motivation At Replit, we use Nix to empower millions of users with hundreds of programming languages. The power of Nix’s reproducible expressions allows us to share system packages fearlessly and quickly with ultimate flexibility for end users. However, users are often not familiar with Nix, so we need to give them the tools they need to interact with it comfortably. Experienced Nix users looking to install or use a package may reach for nix-env, nix search, nix-locate, or search.nixos.org. These tools are excellent for visibility into what’s available in the largest package repository, nixpkgs. Unfortunately, none of these tools give us what we need to provide great search for Replit users: nix-env and nix search are bundled with Nix, which means they’re already accessible in Replit environments, but searching for a package can take several seconds - way too long for those of us who are impatient and just want to find what we’re looking for quickly. nix-locate works by indexing built derivation paths, which is great when you know the path you’re looking for (like /bin/jq), but not great when looking for a package with unknown output formats.
Tue, Mar 26, 2024Introducing Scheduled Deployments
Today, we are launching Scheduled Deployments. This service allows you to schedule your applications to run at predetermined time intervals seamlessly. Specify when the application should run in natural language, and Replit will take care of the rest. Scheduling has always been a popular use case on Replit, but configuring an application like this was difficult. Most developers set up schedulers by deploying an infinite loop that constantly checked the time to a Reserved VM. This process not only had a lot of overhead, but was also inefficient and costly. Now, you can write something like, “Run this script every Tuesday and Thursday at 3:00 PM,” and we’ll generate the cron expression for you so that you can focus on building. What you can build In our closed beta, developers have used Scheduled Deployments to build applications like:
