I made my own Text Editor (in Rust)

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ต.ค. 2023
  • notepad is impressive
    Fextify: github.com/face-hh/fextify
    Patreon: / facedevstuff
    Discord server: / discord
    Twitter: / facedevstuff
    MUSIC:
    Background song (1) - • crepuscular rays
    Background song (2) - • Crossover - Persona 5 ...
    Background song (3) - • Flamingosis - Flute Salad
    Background song (4) - • Sandman - Ignite
    Outro song - • 9 • Nine Nights • Day ...
    Character art by @JersonEXE
    - Twitter: / jersonbrawlstar
    Thanks for watching!
  • บันเทิง

ความคิดเห็น • 133

  • @sirbuttonhd
    @sirbuttonhd 7 หลายเดือนก่อน +542

    “Made my own editor in Rust”
    > writes text editor in JS and CSS
    Alright bud

    • @SoDamnMetal
      @SoDamnMetal 7 หลายเดือนก่อน +67

      Yep, I feel betrayed and lied to.

    • @mollthecoder
      @mollthecoder 7 หลายเดือนก่อน +24

      It was a Rust/HTML/CSS/JS mix using Tauri

    • @vicenteeduardo5598
      @vicenteeduardo5598 6 หลายเดือนก่อน +51

      less than 10% rust code 😢

    • @poms3559
      @poms3559 6 หลายเดือนก่อน +68

      ​@@mollthecoderIt's technically a JS text editor not rust.
      Rust was only used as wrapper to do basic operations which could be done in js anyways.
      Title should be * I made a Js text editor but added few lines of rust for a clickbait *

    • @byafterall
      @byafterall 6 หลายเดือนก่อน

      @@vicenteeduardo5598 27.6%

  • @sherlockluk2225
    @sherlockluk2225 7 หลายเดือนก่อน +369

    literally the prime example of a UI made by a backend developer

    • @EricChiEric
      @EricChiEric 22 วันที่ผ่านมา +3

      well it still manages to look better than like half of all windows programs

  • @notgate2624
    @notgate2624 7 หลายเดือนก่อน +333

    "Why do we have to turn a string into a string" succinctly describes my least favorite thing about rust.

    • @commander3494
      @commander3494 7 หลายเดือนก่อน +37

      But but but but safety and speed and blazingly fast (rocket emoji)!!!111!

    • @RenderingUser
      @RenderingUser 7 หลายเดือนก่อน +52

      well, atleast you wont end up segfaulting due to string difference

    • @InnerEagle
      @InnerEagle 7 หลายเดือนก่อน +1

      I felt that inside

    • @henriquekirchheck
      @henriquekirchheck 6 หลายเดือนก่อน +40

      Oh, you see, when you create a string in rust with double quotes, you are actually creating a string literal, which is a reference to a string slice on the data section of the binary. The String type is a owned type that can be modified and is stored on the heap. That's why you need to turn a string (literal) to a String (owned).

    • @okie9025
      @okie9025 6 หลายเดือนก่อน +12

      @@henriquekirchheck Neat. Personally, whenever I need a simple string, I create my own garbage collected VM language running in my custom kernel mode environment made by manually flipping 0s and 1s using a magnetic needle and using SIMD instructions for performance and semaphores for thread safety. You know, just to be sure.

  • @PragandSens
    @PragandSens 7 หลายเดือนก่อน +54

    My man frameworker using JS and CSS on a "rust" project instead of coding it from scratch like god-sended Terry Davis intended

    • @mbwilding
      @mbwilding 6 หลายเดือนก่อน +1

      This

  • @crafterboy27
    @crafterboy27 7 หลายเดือนก่อน +31

    As a web dev and back end dev that codes in JS, this video is pain, and I love it.

  • @yarrakobama3417
    @yarrakobama3417 7 หลายเดือนก่อน +51

    Well done soldier, we need more people like you.

    • @tomasnunes8192
      @tomasnunes8192 6 หลายเดือนก่อน +7

      No we dont need more electron apps

  • @tedbasher3000
    @tedbasher3000 7 หลายเดือนก่อน +16

    i hate electron

  • @AfterODDs
    @AfterODDs 7 หลายเดือนก่อน +10

    tauri is damn underrated. really love seeing a youtuber making something with it :3

  • @yds6268
    @yds6268 7 หลายเดือนก่อน +34

    I'm just starting with Tauri with no web experience (well, my Javascript knowledge is from 15 years ago).
    I'm definitely going to check out your code to see how the heck to pass data back and forth between frontend and Rust.

    • @FaceDevStuff
      @FaceDevStuff  7 หลายเดือนก่อน +4

      Best of luck! You can also read tauri's documentation on that, it's pretty easy!

  • @AquaQuokka
    @AquaQuokka 7 หลายเดือนก่อน +17

    I can finally make bad code... blazingly fast!

  • @thewilltejeda
    @thewilltejeda 3 หลายเดือนก่อน +1

    As a newbie to Rust I appreciate projects like this !

  • @maurolimaok
    @maurolimaok 29 วันที่ผ่านมา

    I'm learning my first steps on Ondin Project, and THIS is what I want to achieve.
    Thanks for the inspiration.

  • @skylo706
    @skylo706 6 หลายเดือนก่อน

    This is cool, I want to try this out as well. I wrote a text editor a couple of years ago in C#, however I wasn't really satisfied. Pretty much 90% of it was just using/calling existing functions for saving a file, loading, rtf text fields with its methods to get the cursor position etc. I think I'm gonna go deeper next time and try writing more of it myself 😊

  • @therandomsomeone.
    @therandomsomeone. 21 วันที่ผ่านมา

    can't wait for the next episode called "i shat myself (in rust)"

  • @ggorg0
    @ggorg0 7 หลายเดือนก่อน +10

    5:59 fixed the code by changing it to fixed 😂 (yes ik css it means that the element sticks to wherever it was on the screen when scrolling)

    • @cosecseccot
      @cosecseccot 5 หลายเดือนก่อน

      greatest pun of all time

  • @oguzturkay
    @oguzturkay 10 วันที่ผ่านมา

    I mean, this is just Electron on steroids.

  • @rondYT
    @rondYT 7 หลายเดือนก่อน +12

    How do you deal with file corruption? If a file is corrupted, it's lost forever?

    • @FaceDevStuff
      @FaceDevStuff  7 หลายเดือนก่อน +3

      since every file you're modifying & creating is saved in real time, there's really no point in handling file corruption (i think)

    • @CorneliusCornbread
      @CorneliusCornbread 7 หลายเดือนก่อน +9

      If a file is corrupted, the most you can do is detect an app crash and save the changes to a temp file instead of the original file.
      If the file is already corrupted, it's Joever

    • @colly6022
      @colly6022 7 หลายเดือนก่อน

      although some programs do have integrity / sanity checks on files, editors typically don't have to worry about this and can leave it up to the operating system. some configurations allow you to have redundancy data like error correction codes that can help restore corrupted files.

  • @dei8bit
    @dei8bit หลายเดือนก่อน

    this video makes me happy

  • @linuswalker4552
    @linuswalker4552 7 หลายเดือนก่อน +9

    Hey, Why not Egui or Iced? They are pure rust and native, not just web view, they might can help to improve performance even more :3.

    • @FaceDevStuff
      @FaceDevStuff  7 หลายเดือนก่อน +1

      I knew egui existed but I didn't know it supports styling too, so I defaulted to using Tauri since I knew it was popular, I might try it next time I deal with Rust and need a GUI cuz it looks fun

  • @sandeshdahal9526
    @sandeshdahal9526 16 วันที่ผ่านมา

    I made a text editor: I sleep
    in rust: REAL SHIT

  • @kleins0
    @kleins0 7 หลายเดือนก่อน

    insane

  • @elanticrypt0
    @elanticrypt0 5 หลายเดือนก่อน

    you rocks mate!!!!

  • @Snailsxd
    @Snailsxd 7 หลายเดือนก่อน +10

    My man used jquery in 2023 💀

    • @gelis07
      @gelis07 6 หลายเดือนก่อน +4

      why not?

  • @danny-jo1rb
    @danny-jo1rb 7 หลายเดือนก่อน +12

    yay now my notepad can use 300mb of ram too, i hate having all that crusty unused ram on my system

    • @FaceDevStuff
      @FaceDevStuff  7 หลายเดือนก่อน +9

      It's akshually 🤓 60MB at most, the software itself is using 3.5MB & the rest is used by Microsoft Edge WebView2. Having 50 files opened, it increased by 2MB

    • @minion3806
      @minion3806 2 หลายเดือนก่อน

      it's electron that uses that much ram per app. tauri is slimmer

  • @CraccaHacka
    @CraccaHacka 6 หลายเดือนก่อน +3

    I was expecting something more...low level since it's Rust
    JavaScript is too easy

  • @code861
    @code861 6 หลายเดือนก่อน +4

    tl;dw

  • @theaeropilot7
    @theaeropilot7 7 หลายเดือนก่อน

    very nice

  • @odin9523
    @odin9523 หลายเดือนก่อน

    How did you add this line-counter 0:50?

  • @Stratiis
    @Stratiis 7 หลายเดือนก่อน

    You're so underrated

  • @stickguy9109
    @stickguy9109 7 หลายเดือนก่อน

    "Mouse is bad" couldn't agree more!

  • @ego-lay_atman-bay
    @ego-lay_atman-bay 2 หลายเดือนก่อน +1

    Making a text editor in a text editor

  • @kjanimates
    @kjanimates 6 หลายเดือนก่อน

    does it have bussin support?

  • @SIMULATAN
    @SIMULATAN 7 หลายเดือนก่อน

    bro casually remade obsidion as a side project

  • @energistixgames6067
    @energistixgames6067 7 หลายเดือนก่อน +10

    well jquerry is hated bloated and bad practice, also it's old and deprecated

  • @OrangeSmilez
    @OrangeSmilez 6 หลายเดือนก่อน

    "i created life, in rust"

  • @aianshu
    @aianshu 2 หลายเดือนก่อน

    you can also use editor JS

  • @jtg4416
    @jtg4416 2 หลายเดือนก่อน

    anyone know what program he used for the logo design?

    • @FaceDevStuff
      @FaceDevStuff  2 หลายเดือนก่อน

      i use pixlr for all image editing stuff

  • @GearsDatapacks
    @GearsDatapacks 4 หลายเดือนก่อน

    Now all you need to do is add LSP support

  • @elliotalderson9517
    @elliotalderson9517 3 หลายเดือนก่อน

    you should have used a rust frontend framework or iced, egui or something similar

  • @maksiksq
    @maksiksq 5 หลายเดือนก่อน +1

    jQuery's biggest downside is speed, I think it's still worth it depending on your project though

  • @a_maxed_out_handle_of_30_chars
    @a_maxed_out_handle_of_30_chars 7 หลายเดือนก่อน +1

    naisu :)

  • @redball4funnymoments
    @redball4funnymoments 29 วันที่ผ่านมา

    Please replace the command panel shortcut with CTRL + O or anything else, because everytime I Press CTRL + P, it gives me the microsoft edge print tab

  • @galitan5881
    @galitan5881 14 วันที่ผ่านมา

    sheeeeeesh

  • @kongle8737
    @kongle8737 5 หลายเดือนก่อน +3

    wow a youtuber who actually made a good program!

  • @user-sj7lk5lg3x
    @user-sj7lk5lg3x 7 หลายเดือนก่อน +2

    vim?

  • @captheobbyist6434
    @captheobbyist6434 6 หลายเดือนก่อน

    i like the regular notepad because it's the cleanest editor ever
    you have an entire screen for writing space and having 40% of the screen just for writing doesnt seem too good for me.
    tabs in notepad would be really good...
    so thats why i use notepad++
    looks a bit outdated but it has all necesarry features and unceserassy featurs hidden

    • @NiffirgkcaJ
      @NiffirgkcaJ 6 หลายเดือนก่อน

      Notepad has tabs now though.

    • @captheobbyist6434
      @captheobbyist6434 6 หลายเดือนก่อน

      @@NiffirgkcaJ i don't really see it

    • @user-bi1vv3vq3i
      @user-bi1vv3vq3i 6 หลายเดือนก่อน

      Use dred, it is as fast as old Notepad and has tabs (you can also make your own themes!)

    • @NiffirgkcaJ
      @NiffirgkcaJ 6 หลายเดือนก่อน

      @@captheobbyist6434 it's available in Windows 11, I think.

  • @jules_________
    @jules_________ 6 หลายเดือนก่อน

    Logo looks really like faraday's logo

  • @roughlyunderscore
    @roughlyunderscore 6 หลายเดือนก่อน +5

    If this had syntax highlighting for languages as well, I'd switch to this text editor unironically haha

  • @csharp_enjoyer
    @csharp_enjoyer 7 หลายเดือนก่อน

    cool

  • @msodev
    @msodev 6 หลายเดือนก่อน

    No vim support? This editor is SLOOOOOOOOOOOOOOOOOOOOOOWWWWWWWWWW

  • @Toby-ve6gp
    @Toby-ve6gp วันที่ผ่านมา

    Can you please make the music quieter in the future, I am having a hard time understanding you.

  • @vk8a8
    @vk8a8 6 หลายเดือนก่อน +1

    What does rust even do? What is it used for?

    • @ilxplay
      @ilxplay 3 หลายเดือนก่อน

      he used JS and CSS no rusy

  • @ssdjelal
    @ssdjelal 7 หลายเดือนก่อน +1

    You made the text editor in javascript not in rust as you have used tauri as a webview only.

  • @sovenok-hacker
    @sovenok-hacker 4 หลายเดือนก่อน

    2:59 In rust we trust ;-)

  • @nicolasreveco3748
    @nicolasreveco3748 6 หลายเดือนก่อน

    i thought it was in the game Rust, i was so confused

  • @ben_Munin
    @ben_Munin 4 หลายเดือนก่อน

    i cant accept the notepad slander

  • @lucidattf
    @lucidattf 7 หลายเดือนก่อน +6

    lmfao jquery moment. vomitting

  • @CottidaeSEA
    @CottidaeSEA 6 หลายเดือนก่อน

    jQuery is pretty nice, but I see little reason to use it in general.

  • @realzuhaz
    @realzuhaz 7 หลายเดือนก่อน

    Kewl

  • @maksiksq
    @maksiksq 5 หลายเดือนก่อน

    C L E A N

  • @commander3494
    @commander3494 7 หลายเดือนก่อน +4

    "5 years ago is outdated"
    >Meanwhile: using jquery
    Jokes aside, it looks pretty nice, seems to do its job, and most importantly is not (quite) electron; so it's good

  • @errplane_
    @errplane_ 3 หลายเดือนก่อน

    "not even made using the best framework ever, electron" 🤡🤡🤡

  • @spytronx
    @spytronx 6 หลายเดือนก่อน

    Can you plz make a vid on C++ im tryna learn it

    • @FaceDevStuff
      @FaceDevStuff  6 หลายเดือนก่อน +1

      maybe, i was planning on doing it but got distracted with rust lol

  • @segsfault
    @segsfault 3 วันที่ผ่านมา

    So you just coded a website and wrapped in a WebView?

  • @cazdotsys
    @cazdotsys 7 หลายเดือนก่อน

    rust for the win 🦀🦀

    • @thecoolnewsguy
      @thecoolnewsguy 6 หลายเดือนก่อน

      What? He literally used JS for the most part

  • @conaticus
    @conaticus 6 หลายเดือนก่อน

    great video, despite the thumbnail & title 😂

    • @FaceDevStuff
      @FaceDevStuff  6 หลายเดือนก่อน

      love your vids mr. british man

  • @0xbr0d
    @0xbr0d 2 หลายเดือนก่อน

    ummmm, they updated notepad

  • @RenderingUser
    @RenderingUser 7 หลายเดือนก่อน +2

    1:16 is it just me or do i just see a whole bunch of "putin"

    • @FaceDevStuff
      @FaceDevStuff  7 หลายเดือนก่อน

      It's "input" 💀, I pasted that since I had it in clipboard

    • @RenderingUser
      @RenderingUser 7 หลายเดือนก่อน +1

      @@FaceDevStuff I am aware. I just happened to find it funny

  • @TheGabrielMoon
    @TheGabrielMoon 6 หลายเดือนก่อน

    bro just use the attr contenteditable llmao what u doing

  • @EquaTechnologies
    @EquaTechnologies 6 หลายเดือนก่อน

    Notepad is the best for me and I'm not even joking
    ...but that doesn't mean that I don't love your editor!!!!!

  • @matt92hun
    @matt92hun 7 หลายเดือนก่อน

    My favourite text editor is VSCode with vim bindings.

  • @eineatombombe
    @eineatombombe 5 หลายเดือนก่อน

    jquery
    const $ = (q) => { return document.querySelector(q) }
    const $$ = (q) => { return document.querySelectorAll(q) }

  • @DerSolinski
    @DerSolinski 5 หลายเดือนก่อน

    For everyone struggling with Rusts String shenanigans,
    Let's get Rusty made a good vid explaining all of it.
    th-cam.com/video/CpvzeyzgQdw/w-d-xo.html
    Frankly it's an eye opener.

  • @goodbee1
    @goodbee1 7 หลายเดือนก่อน +2

    first

  • @TheRealMangoDev
    @TheRealMangoDev 6 หลายเดือนก่อน

    ok. Text editors r mid. Make an IDE. (not a discord one)

  • @Losiek2137
    @Losiek2137 6 หลายเดือนก่อน

    omg why jquery 💩

  • @soupnoodles
    @soupnoodles 4 หลายเดือนก่อน

    - Not even a programming text editor
    - Made with JS and only binded with Rust which is less than 10% Rust src even though rust is more verbose
    - Clickbait

  • @Phantom-lr6cs
    @Phantom-lr6cs หลายเดือนก่อน

    i hope you won't go and create os in html/css/js and call it rust-written XD
    what is this nightmare men ? what notepad ? you are just coding in html and css and js XD

  • @jordixboy
    @jordixboy 6 หลายเดือนก่อน +2

    Like why use html, this is a abomination. You are using rust to make things fast but then ypu slow it down by rendering html css and js.. just make it native, use open gl or whatever

  • @angelocore
    @angelocore 7 หลายเดือนก่อน

    Speak slower bro

  • @matthews1256
    @matthews1256 5 หลายเดือนก่อน

    Wants to make a "blazingly fast" editor, uses jQuery...

  • @CraccaHacka
    @CraccaHacka 6 หลายเดือนก่อน +2

    I was expecting something more...low level since it's Rust
    JavaScript is too easy