You are browsing as a guest. Sign up (or log in) to start making projects!

R(ust)SVP

  • 7 Devlogs
  • 8 Total hours

A RSVP in Rust with eframe & egui

Ship #1 Pending review

R(ust)SVP

A realy fast speed reading app built in Rust ! ᕙ( •̀ ᗜ •́ )ᕗ

What did you make ?

I built a Rapid Serial Visual Presentation (RSVP) application from scratch using Rust!

Instead of reading a block of text from left to right, R(ust)SVP flashes words one by one in the exact center of your screen.

This reduce the time your eyes spend moving across the page, letting you read really fast. I built the graphical interface using egui (via the eframe framework).

Here is what’s inside:

  • Custom Speed Control: a slider to adjust your Words Per Minute (WPM)

  • Native File Picker: i added rfd (Rust File Dialog) so you can open a native window to load your own text files directly into the reader.

  • Drag & Drop: you can just drop a .txt file and start reading it

  • Cross-Platform: can be used on Windows, macOS and Linux !

What was challenging ?

  • UI: egui is very simple to create basic UI but when you want to add custom button style, font, its start to be a little bit hard

  • String parsing: splitting a text file into a “list” of words, being able to get the comma, dot, punctuation etc… and keeping track of the current index so you can jump around the text

What are you proud of ?

I am proud of successfully building and shipping a complete native GUI application in Rust for the first time ! ദ്ദി(˵ •̀ ᴗ - ˵ ) ✧

What should people know so they can test your project ?

How to test:

  • You can just do cargo install rustsvp and run it with rustsvp !

ദ്ദി(˵ •̀ ᴗ - ˵ ) ✧

Things to try

  • Load up a long text (like a wikipedia article) or a chapter of a book

  • Start the speed at 300 WPM, and slowly crank the slider up to 500+ WPM while reading.

  • Try using the back and forward button to go back and forth through the text if you miss a sentence.

  • 7 devlogs
  • 8h
Try project → See source code →
Open comments for this post

1h 1m 4s logged

Last devlogs before Ship ! :yay:

I have done the README.md and upload the video + screen shot. All I have to do now is publish it to crates.io / cargo !

0
0
27
Open comments for this post

1h 35m 13s logged

Devlogs Number 6 :60fps-parrot:

I have done a lot of optimization and reorganization in the code so it’s clean as possible :yay:

I also added the Drag & Drop feature with error management if the file is not a .txt file

0
0
28
Open comments for this post

43m 24s logged

Devlogs number…. 5 :yesyes:

In this devlogs I have added simple things such as :

  • Guide line for the center letter of the word
  • Ability to open .txt file and use them !
  • Keybind to open the file selector : Ctrl+O (or Cmd+O)
  • Button to open file !
0
0
114
Open comments for this post

1h 36m 38s logged

Devlogs number 4 :yesyes:

New UI + Keyboard Control :yay: !

Here is what has been changed or added:

  • Change Font to Ubuntu Bold

  • New button UI

  • New Slider UI

  • New Top Bar arrangement

  • Keybinds for everything (Start, Next, Previous, WPM, Reset)

0
0
32
Open comments for this post

59m 2s logged

3rd Devlogs :wowsers:

Just some little fix / update:

  • Grey out Back and Next Button when going backward or forward is not possible

  • New default font: Helvetica for text and NotoSansSymbol for keybinds symbol

0
0
59
Open comments for this post

1h 11m 52s logged

2nd devlogs :yay:

Here are the things that I have added:

  • The center letter of the word is RED :green:

  • The text is center on the screen, and the RED :green: character never move from the center of the screen, so there is no need to move the eyes

  • Text is now bigger

  • Start/Stop Button

  • Reset Button

  • Punctuation are now at the end of the previous word

  • The last word stay in place even when the text is finished (before it was showing nothing)

0
0
17
Open comments for this post

57m 10s logged

Okay, 1st devlogs of…

R(ust)SVP

I am using egui to make the GUI ! :yay: .
Here is what I added for now:

  • Text spliting into word
  • Flashing text (change with the WPM speed)
  • WPM slider
0
0
55

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…