How I made my own text editor like VSCode

Hello World! I am back with a new article πŸŽ‰....
Today, I am going to talk about the editor which I have made πŸ‘‰ tiny editor; which is very helpful to write code on web browser and many more..
So, How I made?
Libraries / Frameworks
  • React JS
  • CodeMirror
  • Monaco Editor
  • tiny-unique-id
  • FontAwesome Icons
  • react-sandbox-editor
  • Database (to save code and auth)
  • Cloud Firestore (Firebase)
  • How I made code input / editor?
  • To make the Editor / Input I have used CodeMirror Classic Editor
  • <ControlledEditor 
                onBeforeChange={handleChange}
                value={value}
                className="code-mirror-wrapper"
                options={{
                    lineWrapping: true,
                    lint: true,
                    mode: language,
                    theme: 'material',
                    lineNumbers: true,
                    autoCloseBrackets: true,
                    matchBrackets: true,
                    autoCloseTags: true,
                    matchTags: true,
                }}
    />
  • And for VSCode Editor, I have used Monaco Editor VS Code Editor
  • <Editor
         defaultLanguage="javascript"
         theme="vs-dark"
         value={js}
         onChange={setJs}
         className='editor'
       />
    How output is shown
  • To show output, I have used iframe
  • <iframe
          srcDoc={srcDoc}
           title="output"
           sandbox="allow-forms allow-popups allow-scripts allow-same-origin allow-modals"
           frameBorder="0"
           width="100%"
           height="100%"
          />
    How code saves / update?
  • To save the code, I have used Cloud Firestore (Firebase) which saves the code in JSON Cloud Firestore
  • This is how I made my own text editor like VSCODE.
    I have made a video on showcasing it, so make sure to check out the video and don't forget to check out my Youtube Channel

    23

    This website collects cookies to deliver better user experience

    How I made my own text editor like VSCode