Replit

Software development environment

  • Amjad Masad
  • Faris Masad
  • Haya Odeh
[1][2]Headquarters
San Francisco, California
Number of locations
2 offices (2022)Services
  • Community
  • Hosting
  • IDE
Websitereplit.com

Replit (/ˈrɛplɪt/), formerly Repl.it, is an American start-up and an online integrated development environment (IDE).[3] Replit allows users to create online programming projects called repls.[4]

History

Replit was co-founded by programmers Amjad Masad, Faris Masad, and designer Haya Odeh in 2016.[1][2] It was incorporated in San Mateo.[5] Once listed as a co-founder alongside Masad, Max Shawabkeh left the venture early on.[6][7][8] Its name comes from the acronym REPL, which stands for "read–evaluate–print loop".

Before creating Replit, Amjad Masad worked in engineering roles at Yahoo and Facebook, where he built development tools. He also helped found Codecademy. Masad had come up with the idea for Replit over a decade before its creation.[9]

In 2009, having seen significant advancements in browser and web technologies, Masad imagined a development environment built on the same premise as Google Docs; that is, allowing the user to write and share code all in a web browser. In 2011, prior to Haya Odeh’s involvement, he produced an early open-source version of this concept, called “JSRepl”. After the name “Repl.it” was chosen, Odeh was recruited to design the logo and website.[10] Because Masad then spent a few years working at various companies,[3] including Udacity and Codecademy, JSRepl was used to power Udacity and Codecademy's in-browser tutorials.[9] Development was paused during this period. Masad and Odeh together resumed it afterward.

As Replit was taking shape, Masad and Odeh wanted to have "a real environment and not something emulated in the browser." The focus was first directed at the education market, and then later towards professional developers.[3]

Since March 2021, "replit.com" has been the default domain name for the web service, replacing the older "repl.it". This change was attributed to Masad's preference that people pronounce the website's name as /ˈrɛplɪt/ instead of /ˈrɛpəl/.[10] Another reason cited by Masad was issues with the ".it" top-level domain, such as renewal restrictions.[11]

Replit originally was only a REPL. However, the Ace editor was eventually implemented, allowing for editing of programs as well. In 2017, Replit switched to the Monaco code editor, the same editor used in Visual Studio Code. Due to issues with mobile support, the code editor was switched to CodeMirror over 2021 - 2022.[12] This decision was met with backlash and criticism from the Replit community, which eventually calmed down after bugs and major issues were addressed.

From 2022 to 2024, Replit offered Teams for Education as a free product to assist computer science teachers in the classroom. In November 2023, it was announced to users that it would be discontinued. In a post on Twitter, Masad explained that the service was uneconomical for the business to maintain.[13] The following month, an official blog post on the Replit site confirmed the decision, and identified August 2024 as when Teams for Education would be entirely "removed from the Replit product".[14]

In 2024, it was announced that Replit would be moving from its SoMa headquarters in San Francisco to a new location in Foster City.[15][16]

In August 2024, the site's free or "Starter" plan was changed, limiting users to creating a maximum of three public projects.[17] Users are allowed to keep any projects they created prior to the change.

Features

Replit is an online integrated development environment (IDE) that can be used with a variety of programming languages.

Replit originally supported over 50 programming language but as of February 23, 2022, Replit uses the Nix package manager[18] which allows users access to the entire Nixpkgs package database. New Repls can be created through official language templates or through a user's custom Nix configuration. Users can configure anything from the Language Server Protocol to debugger support for a Repl.[19]

It uses the CodeMirror 6 editor component,[20] the same editor component employed by other major websites such as CodePen.[21]

Replit supports collaborative coding with the ability for multiple users to edit a shared repl, real-time edits across files, and instant messaging.[22] Using a shared compute engine, code can be run and displayed the same to multiple users in a Repl.[22]

Repl environments have built-in source control via Git[23] on all Repls and users can switch branches, push files, and revert code. Replit allows for the pulling of code from a GitHub repository and linking Repls to GitHub repositories.[24] Some Repls also have debugger and unit testing support. Replit uses the Debugger Adapter Protocol to provide debugging services in Java, Python, Node.js, and C++ for all users connected to a Repl.[25] Replit has zero-setup unit testing in several languages.[26] Repls also have secrets management,[27] allowing users to hide values from others who see the Repl publicly. Repls also have databases with key-value data supported in Python, Node.js, and Go. Databases still can be accessed in other languages by using system calls.[28]

Users could also import projects from Glitch, which provides a similar service to Replit, though it is unknown if this feature is still officially supported; as of July 2022 it is functional.

In October 2023, Replit made new features powered by machine learning available to all users. These features include suggestions for code completion and chat software development. The announcement of Replit AI's public release states, "Replit will become a synonym of AI for software creators -- only then we will have accomplished our mission."[29] Replit's FAQ states the algorithms were trained on public code. All public code hosted on Replit is subject to the MIT license and may be used to train machine learning models. User settings are available to disable suggestions from machine learning. In order to prevent code from being used to train Replit algorithms, users must make their Repl private.[30]

References

  1. ^ a b Rodriguez, Salvador (October 22, 2018). "Former Facebook engineer quit to build the programming tool he always wanted". CNBC.
  2. ^ a b "Today's Entrepreneur: Faris Masad". VatorNews. April 30, 2019. Retrieved January 12, 2021.
  3. ^ a b c "Repl.it lets you program in your browser". TechCrunch. March 15, 2018. Retrieved January 5, 2019.
  4. ^ Odeh, Haya (May 29, 2017). "Check out my Repl!". Replit. Archived from the original on October 27, 2021. Retrieved June 30, 2022.
  5. ^ Replit (January 27, 2021). "Replit — Going Global". Replit Blog. Retrieved April 30, 2024.
  6. ^ "About - Repl.it". repl.it/about. Archived from the original on August 24, 2014. Retrieved June 8, 2021.
  7. ^ Eisenberg, Bart (October 22, 2012). "#42 Computer Science 2.0: Part 1―Amjad Masad: Engineer, Codecademy; Co-inventor, repl.it". Retrieved June 8, 2021.
  8. ^ Spina, Carli (May 5, 2014). "Practice Programming Languages In Your Browser With Repl.it". Retrieved June 8, 2021.
  9. ^ a b Sawers, Paul (February 18, 2021). "Replit raises $20 million for collaborative browser-based coding". VentureBeat. Retrieved March 13, 2021.
  10. ^ a b Masad, Amjad (March 9, 2021). "Replit Dotcom". Replit. Retrieved September 6, 2024.
  11. ^ Masad, Amjad. "what happened to repl.it???". Replit. Archived from the original on April 15, 2021. Retrieved September 7, 2024.
  12. ^ Masad, Faris (December 13, 2021). "Ace, CodeMirror, and Monaco: A Comparison of the Code Editors You Use in the Browser". Replit Blog. Retrieved March 2, 2022.
  13. ^ Mann, Tobias. "CompSci teachers panic as Replit pulls the plug on educational IDE". The Register. Retrieved September 6, 2024.
  14. ^ "Update on Teams for Education". Replit. December 6, 2023. Retrieved September 6, 2024.
  15. ^ https://twitter.com/amasad/status/1785125298398446016 [bare URL]
  16. ^ "Camila Thomsen on LinkedIn: Exciting times at Replit, we are moving HQ to a larger office space in…". www.linkedin.com. Retrieved April 30, 2024.
  17. ^ "Pricing". Replit. Archived from the original on September 5, 2024. Retrieved September 4, 2024.
  18. ^ Replit (February 23, 2022). "All New Repls are Powered By Nix". Replit Blog. Retrieved June 30, 2022.
  19. ^ Replit. "Using Nix with Replit | Replit Docs". Replit Docs. Retrieved June 30, 2022.
  20. ^ Replit (March 9, 2022). "Betting on CodeMirror". Replit Blog. Retrieved June 30, 2022.
  21. ^ "CodeMirror: Real-world uses". codemirror.net. Retrieved June 30, 2022.
  22. ^ a b Replit. "Collaboratively code in realtime with Replit Multiplayer". Replit. Retrieved June 30, 2022.
  23. ^ Replit. "Using Git with Replit | Replit Docs". Replit Docs. Retrieved June 30, 2022.
  24. ^ Replit. "GitHub and the Run button | Replit Docs". Replit Docs. Retrieved June 30, 2022.
  25. ^ Replit (July 2, 2021). "Multiplayer Debugging Experience for Python, Node.js, Java, and C/C++". Replit Blog. Retrieved June 30, 2022.
  26. ^ Replit. "No-setup Unit Testing". Replit Blog. Retrieved June 30, 2022.
  27. ^ Replit (April 18, 2021). "Announcing Secrets Management". Replit Blog. Retrieved June 30, 2022.
  28. ^ "Replit Key-Value Database | Replit Docs". docs.replit.com. May 3, 2024. Retrieved May 26, 2024.
  29. ^ "Replit — Announcing Replit AI for All". October 9, 2023.
  30. ^ "FAQ | Replit Docs". August 30, 2024.