Fork me on GitHub
Open source collaborative code and text editing
Add Firepad to your app! Use this code:
var firepadDiv = document.getElementById('firepad');
var firepadRef = firebase.database().ref();
var codeMirror = CodeMirror(firepadDiv, { lineWrapping: true });
var firepad = Firepad.fromCodeMirror(firepadRef, codeMirror,
    { richTextShortcuts: true, richTextToolbar: true });
Real-time collaboration with no server code.
Use Firepad for:
Rich Text Editing Enable synchronous rich-text document editing. Images can be added to documents too!
Code Editing Create a collaborative coding experience.
and more! Extend Firepad through its API or by contributing to the MIT licensed GitHub project.
See more »
Built with Firepad: A collaborative markdown editor and previewer. Try it »
Koding A social development platform with real-time collaborative features. Try it » A real-time, collaborative, and fully in-browser REPL. Try it »
ShiftEdit ShiftEdit is an online IDE for developing websites from the comfort of your browser. Try it »
EXLskills Live Coding Interviews Platform Free realtime online coding environment for conducting live interviews Try it »
What is Firepad?
Firepad is an open source real-time collaborative text editor. It provides true collaborative editing, complete with intelligent operational transform-based merging and conflict resolution. Some features include:
  • Cursor position synchronization
  • Undo & redo
  • Text highlighting
  • User attribution
  • Presence detection
  • Version checkpointing
What can I do with Firepad?
You can build any application that requires collaborative editing of text documents. Firepad supports both rich text and code editing out-of-the-box, and it's easy to extend for other use cases.
How is Firepad different than other collaborative text editors?
Most collaborative text editors require special code to run on a server, making them impractical to use if you're not already using the right server stack. Firepad has no server dependencies and instead relies on the Firebase Realtime Database for real-time data synchronization. This means that it's easy to add Firepad to any application, even static websites. All you need to do is drop in the JavaScript files and go.
Which technologies does Firepad use?
Firepad can render documents using the CodeMirror, Ace, or Monaco editors, and its operational transform code borrows from ot.js. Behind the scenes, Firepad uses the Firebase Realtime Database for cloud data storage and synchronization.
Who's behind Firepad?
Firepad was built by Michael Lehenbauer and the team at Firebase. There are many other features that could be added, please star Firepad on GitHub and send over a pull request when you have things to contribute!
How is Firepad Licensed?
Which browsers does Firepad support?
All modern browsers:
  • Chrome
  • Safari
  • Opera 11+
  • IE8+
  • Firefox 3.6+
Can I get involved?
Yes! We welcome help from the community. Join our Google Group or send us a pull request.