cw
pixels
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cw
-
why GNU grep is fast
For things that are commonly and almost-ideally represented as text files, there’s a lot of Rust based alternatives are faster and have more features than the old unix/GNU tools: ripgrep, fd, cw, and you can find more in this list.
-
A wc clone, written in Go
Nice, beats my old Rust wc through sheer brute force on my old 12c/24t server:
-
How to learn Rust by own tiny applications?
A lot of unix-y tools have been rewritten in rust, where the usefulness comes from it being faster or having more features. Examples: bat, cw, lsd, ripgrep, diskonaut, gping. Maybe you could find an interesting program to rewrite?
-
Awesome Rewrite It In Rust - A curated list of replacements for existing software written in Rust
cw, an optionally-multithreaded bytecount-accelerated wc clone
-
Debian Running on Rust Coreutils
Having written a Rust wc implementation a few years ago (https://github.com/Freaky/cw), I had a look at theirs.
It's pretty naive - a simple linewise read_until loop, a conditional to avoid word splitting and such if it's not needed, and for some reason it collects results into an array and prints when it's done rather than printing as it goes.
It doesn't support --files0-from like GNU wc, so isn't a drop-in replacement from that perspective. It also has the sadly common Rust trope of only supporting filenames that are valid UTF-8.
It doesn't seem overly slow considering its simplicity - usually trading blows with GNU and BSD wc. Perhaps the most glaring omission is the lack of a fast path for -c, which should reduce to a stat() call. Also unfortunate not to use the excellent bytecount crate to provide a very fast -l/m path.
The read_until loop also makes its memory use unpredictable compared with other wc's. If you run it on /dev/zero it will try to eat your computer.
pixels
-
A minimal working Rust / SDL2 / WASM browser game
https://github.com/parasyte/pixels
That gives you a simple software framebuffer, and it builds as a native app or for the web.
-
How do rust gui frameworks avoid rerendering?
On a more recent machine, that same (well, more primitive) app with pixels or softbuffer struggled beyond acceptable. But was definitely poorly written.
-
Announcing lavagna v2, a collaborative blackboard made with bevy and WebRTC
I’ve ported the application from being based on pixels crate to the powerful bevy game engine
-
placing pixels
Well, it depends on how you use it; writing to an image buffer isn't much less efficient than writing to any normal buffer (in fact, although displaying your scene to a window efficiently is important, your main bottleneck will be the actual ray tracing loop). You may want to read this article for a practical example of using an ImageBuffer to create and draw a texture with Piston. Other window backends you could use, apart from pixels which was already mentioned in another comment, include minifb and Mini GL, though I haven't personally used them.
-
Considerations for Power Draw with egui
You can use wgpu instead of opengl as in the pixels example: https://github.com/parasyte/pixels/tree/main/examples/minimal-fltk
-
Is Macroquad suitable for making games like Wolfenstein RPG?
It might be possible but with a raycaster you probably want to be able to easily set all pixels and create your own small engine. Something like the pixels crate should fit your purpose: https://github.com/parasyte/pixels
-
I love rust, I have a pet peeve with the community
The reality is that I have used unsafe that is also unsound out of convenience because fixing it is a papercut too many. And this tends to be common! I know enough to spot unsoundness in other projects (sometimes even early). But not enough to be confident in my own abilities to write sound unsafe code. Why? Because it's really flipping hard, that's why!
-
[WGPU][GLFW][HELP]
Also, if you just want to get-things-done, then https://github.com/parasyte/pixels might be a bit better, to avoid reinventing the wheel.
-
How to prevent performance drops affecting my Game Boy emulator when running on M1/M2 Macs?
However, I recently got a new M2 Macbook Air and started noticing some super weird behavior. While playing Pokemon Silver with an unlocked framerate, I'd notice that the game would slow down to below 60FPS, even on a release build. After printing a little debugging info I found the culprit in the rendering logic which was handled by the MiniFB crate. At first I thought switching to a GPU renderer (such as https://github.com/parasyte/pixels) would help, and it... kinda did?
-
Simple way to draw a pixel at coordinates
pixels uses wgpu and runs fine.
What are some alternatives?
gping - Ping, but with a graph
macroquad - Cross-platform game engine in Rust.
CompactGUI - Transparently compress active games and programs using Windows 10/11 APIs [Moved to: https://github.com/IridiumIO/CompactGUI]
bevy - A refreshingly simple data-driven game engine built in Rust
regex - An implementation of regular expressions for Rust. This implementation uses finite automata and guarantees linear time matching on all inputs.
rust-sfml - SFML bindings for Rust
ht - Friendly and fast tool for sending HTTP requests
miniquad - Cross platform rendering in Rust
nushell - A new type of shell
ggez - Rust library to create a Good Game Easily
awesome-rewrite-it-in-rust - A curated list of replacements for existing software written in Rust [Moved to: https://github.com/TaKO8Ki/awesome-alternatives-in-rust]
rust_minifb - Cross platfrom window and framebuffer crate for Rust