Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Project showcase #418

Open
MoAlyousef opened this issue Jan 5, 2021 · 26 comments
Open

Project showcase #418

MoAlyousef opened this issue Jan 5, 2021 · 26 comments
Labels

Comments

@MoAlyousef
Copy link
Collaborator

MoAlyousef commented Jan 5, 2021

Some open-source projects using fltk-rs (arranged in alphabetical order):
(Please add other projects that you come across)

Projects

amp-rs

AMP “Another Music Player” provides a basic but useful example of Rust/FLTK and the Soloud sound library.
image

atm-raytracer

A raytracer for panoramas using real-life elevation data
image

ayaya

Testing tool for the Open Sound Control protocol
image

bitwarden-autotype

The missing desktop-autotype for Bitwarden

CaptfEncoder

Captfencoder is opensource a rapid cross platform network security tool suite, providing network security related code conversion, classical cryptography, cryptography, asymmetric encryption, miscellaneous tools, and aggregating all kinds of online tools.
image

CDCS

CDCS is a helper program for modding and the making of Symphony of empires

CharFind

An application for finding Unicode characters
image

charcter-maker

Character Maker for RPG games written in Rust + FLTK
image

chaudloader

Mod loader for Mega Man Battle Network Legacy Collection.

ConnectFour

Connect Four is a two-player connection board game.
image

corsim

Simulation of Coronary Angiography
image

crosshair_switcher

A tool to change your crosshairs and no-explosion scripts on a per-weapon-bases
image

crypto_rs

Linux file encryption software written in Rust with the age encryption format.
image
image

diffscreen

A toy remote desktop implemented by rust.

egui-fltk-frontend

FLTK frontend for Egui WGPU backend.

entrusted

Entrusted is a document sanitizer tool that converts ”potentially suspicious files” into safe PDFs
image

fal

FAL is a crossplatform application laucher designed to be fast and customisable

fe-image-widget

Image widget support for fltk-egui

fltk-dialect

image

fltk-plot

An interactive plotting library for Rust
image

freecut

A cut optimizer software for optimizing rectangular cut pieces from panels along with pdf generation.
image

get_paper_rs

An application to download CAIE past papers.
image

graphical

A powerful, and visual tool for graphing mathematical functions and equations

gravitate-rs

A SameGame/TileFall-like game written in Rust/FLTK.
image

hammer

Safe Network - simple front GUI for the CLI
image
image

intellivision-emulator

An intellivision emulator.
image

j1939logger

Simple FLTK RP1210 based J1939 CAN logger.
image

Library_rs

A book library interface for issuing books in libraries.
image

lightron

The Lightron Web Server is a lightweight web server

mc_afk_bot

A simple yet powerful app for leaving a bot AFK in your Minecraft farms
image

MechanicsProgramsRust

Various applications for mechanics simulations and structural engineering models written in Rust
image
image
image
image

mkv-audio-extractor

MKV audio extractor is a tool to extract audio in flac format from mkv files.
image

narrative-director-rs

An Audio/Video Recording application tailored for working on medium to large-sized projects, written in Rust.
image
image

netport

A GUI address port checker written in Rust
image

niccalc

Niccalc is a tool that helps to determine the necessary amount of nicotine for an e-cigarette liquid
image

openSIMP

Open Secure Instant Messaging Protocol (formerly Suschat)

OpusProto

Standalone, open-source audio mastering software prototype

pistiflex

Simple card game built with Rust and FLTK

Post Maker

Post Maker helps you to make post for instagram and other social media apps easily and in massive amount.
image

PngOptimizier

Cross platform, tiny but ultra fast PNG optimizer
image

rahmen

Rahmen is a lightweight tool to present images while consuming little resources. It takes a list of files or a pattern, and periodically shows the next image.

rcas

A Rust Computer Algebra System
image

rchive

Open Source compression file manager written in rust for windows.

Resters

A lightweight cross-platform Rest API tester

retrofilter

image
A simple image processing tool, which allows one to make digital images look a bit "retro"

RGBReader

Reads avg of r g b values from image

rootsmagic-importer

Imports information from various public family history sites into RootsMagic

rpg-stat

Role Playing Game Statistics library written in Rust

rpn-rs

Reverse Polish Notation Calculator

rs-chinese-chess

image

rust_file_crawler

A GUI version of Rust_File_Crawler
image

rust_hero

A simple game in Rust
image

RustTaskBarProgress

A small example which shows how to display progress information on the taskbar button on Windows

Rustree

Rustree is a notepad that stores text (in HTML format) in a hierarchical structure. (A document is a tree: it has a root node, which has child nodes, which have child nodes, etc...). It was inspired by Treepad.
image

rust_udp_spreadsheet

Desktop app with UDP sync tables

rust-voltorb-flip-solver

An efficient tool for solving Voltorb Flip puzzles
image

seam-carving

Rust implementation of Seam Carving for Content-Aware Image Resizing

slackrypt

A client-server project to share encrypted messages in Slack

SolariumProcessor

SolariumProcessor, or SProc, is a simple 16-bit hypothetical processor that implements a basic Instruction Set Architecture.
image

sp-ros

The ros2 workspace for Sequence Planner with required messages and other nodes

STM32-USBFloppyTracer

Raw floppy writing, verification and reading using STM32F4. Supports copy protected images.

sudokusolver

A small application which can solve sudoku puzzles
image

sweeper

Identifying and deleting unpaired files, ensuring your photo library stays organized and clutter-free.

swyh-rs

A "Stream-What-You-Hear" implementation written in Rust.
image

sysinfo-gui

A cross-platform system-monitoring gui application based on sysinfo and fltk.
image

terrific-audio-driver

A homebrew audio driver for the Super Nintendo
image
image

tim

GUI countdown timer
image

tkd-scoreboard

Scoreboard program for taekwondo competition.
image

tlm

Track List Manager manages playlists and plays tracks.
image

trueLMAO

sega megadrive emulator

VideoAnalysisController

Video player to analyze (sports) clips controllable by Xbox / PS controllers (or others)

weather-tray-rs

A system tray which shows the weather temperature of the selected place using the Open Weather API

weectrl

A cross platform library and application for controlling Belkin WeMo switches and Sockets.
image

Weylus

Weylus turns your tablet or smart phone into a graphic tablet/touch screen for your computer!
image

WxDatViewerAutoExportRust

Dat Viewer auto export.
image
image
image

yabinero

A Binero game

zao_ecg_axis

find the electrocardiographic axis of QRS complex from the Frontal leads.
image

@MoAlyousef MoAlyousef pinned this issue Jan 5, 2021
@MoAlyousef
Copy link
Collaborator Author

MoAlyousef commented Jan 5, 2021

Repos using fltk-rs as a dev-dependency or providing fltk-rs examples/demos (arranged in alphabetically):

7guis-fltk-rs

An implementation of the 7guis tasks using fltk-rs

asynchron

Asynchronize blocking operation

boostvoronoi.rs

Boost voronoi ported to Rust. (The gui example shows drawing done using fltk-rs)

centerline.rs

Simple rust library for finding centerlines of 2D closed geometry. (Visualization and drawing is done using fltk-rs)

demos

A collection of demos using fltk-rs

fltk-demo

A demo of fltk-rs, which is used to show various new experimental gadgets.

FLTK-RS-Examples

A small collection of modular UI features made with fltk-rs.

intersect2d.rs

Line intersection sweep-line algorithm. (Visualization and drawing is done using fltk-rs)

linestring

2d & 3d Line toolbox for Rust. (The demo and visualization uses fltk-rs)

pixels

A tiny hardware-accelerated pixel frame buffer. Offers a minimal fltk example using an fltk window as a frame buffer.

quadoculars

Concurrent, composable simple file watcher on top of notify-rs. (Has an fltk app example with live-reloading)

Gists:

@stale stale bot added the wontfix This will not be worked on label Feb 4, 2021
@fltk-rs fltk-rs deleted a comment from stale bot Feb 4, 2021
@MoAlyousef MoAlyousef removed the wontfix This will not be worked on label Feb 4, 2021
@stale stale bot added the wontfix This will not be worked on label Feb 28, 2021
@fltk-rs fltk-rs deleted a comment from stale bot Feb 28, 2021
@stale stale bot removed the wontfix This will not be worked on label Feb 28, 2021
@parasyte
Copy link

parasyte commented May 8, 2021

Another repo with an example for fltk: https://github.com/parasyte/pixels

@MoAlyousef
Copy link
Collaborator Author

Indeed. Thank you :)

@pysrc
Copy link

pysrc commented Apr 13, 2022

This is my fltk-rs project that a toy remote desktop implemented by rust. Thank you. https://github.com/pysrc/diffscreen

@MoAlyousef
Copy link
Collaborator Author

Thank you. I’ve updated the list.

@MoAlyousef MoAlyousef reopened this Nov 22, 2022
@MatthiasWM
Copy link

Wow! That is an impressive list of apps! What a great idea to publish this here. If I may copy you, I will do something similar for core FLTK.

@MoAlyousef
Copy link
Collaborator Author

That would be a great idea. Some are already listed on wikipedia and the FLTK website. I can also contribute to that list.

Github provides a "Used By" heading in Rust repos which generally makes finding projects depending on yours easier.

@CM-IV
Copy link

CM-IV commented Jul 9, 2023

I'd like to add my file encryption software crypto_rs to this list. The program makes use of the age encryption library to encrypt your provided file and generate a password. Make sure to clone the fltk branch - unless you'd like to try the software implemented with either the clap or inquire crates via their respective branches.

image

image

@MoAlyousef
Copy link
Collaborator Author

Thank you for sharing your app @CM-IV
I'll update the list

@theavege
Copy link
Contributor

theavege commented Sep 21, 2023

It would be cool to celebrate the EDE project and accumulate these programs into it.
It will be possible to think about HIG (for example Gnome, Elementary, KDE) for FLTK applications.

FLTK-RS is amazing and renews the interest in FLTK. Thank you!

@MoAlyousef
Copy link
Collaborator Author

Thank you for your kind words!

@theavege
Copy link
Contributor

@MoAlyousef , can you add tabs, find, replace, mark to "examples/editor.rs" and "examples/editor2.rs"?

@MoAlyousef
Copy link
Collaborator Author

MoAlyousef commented Sep 22, 2023

I'm working (when I have the chance) on an editor example to add to the fltk-rs/demos repo. The code can be found here:
https://github.com/MoAlyousef/red

It needs some more work, especially tying closable tabs to file buffers.
The examples in the example dir are supposed to be small and easily understandable to new users.

@theavege
Copy link
Contributor

Great! Thanks a lot! I couldn't find a file manager on FLTK.

@MatthiasWM
Copy link

@MoAlyousef I will be reworking the FLTK/demo editor on the C++ side in the next weeks. After all, it's used as part of the manual as a tutorial, and the app and tutorial seem to be out of sync. Let me know if there are wishes or concerns.

@theavege
Copy link
Contributor

@MoAlyousef Do you know how to implement running only one instance of the application?

@MoAlyousef
Copy link
Collaborator Author

@MatthiasWM Thanks for working on this. In the red editor demo, I'm adding closable tabs to showcase that feature as well. It also has an embedded terminal if compiled with cargo build --feature=portable-pty. I think I'm running into a bug in Fl_Simple_Terminal::append(const char *, int len) which I'll try to debug later. It only appears on linux.

@theavege I think I saw a modern file manager FLTK project recently (in C++), it may be this https://github.com/darealshinji/fltk-filetable or https://github.com/darealshinji/fltk-dialog,
To run a single instance of an application, I think you'll have to check the system's process list at the start of an app. I'm not sure if there's a crossplatform way to do it.

@theavege
Copy link
Contributor

@MoAlyousef Thanks a lot! I'm exploring them.

@undisbeliever
Copy link

Can you please add Terrific Audio Driver (A homebrew audio driver for the Super Nintendo) to this list.

instrument editor

mml note tracker


I chose to write the GUI using fltk-rs as it supported the 3 features I wanted (tables, group::Tabs widget and TextEditor syntax highlighting) and because of how easy it was to cross-compile Linux, Windows and OSX.

Thank you for creating fltk-rs. The examples you have published and the quick response to my bug reports have been a tremendous help in the creation of this GUI.

@MoAlyousef
Copy link
Collaborator Author

Thank you. terrific-audio-driver looks great, I'll have to give it a try.
I've added it to the list.

@zalupa35
Copy link

zalupa35 commented Jan 8, 2024

can you please add a Rustree to this list? this is a notepad that stores text in a hierarchical structure. it compiles for windows, but I'm not sure if it compiles for linux. Also thanks for creating fltk-rs! I really liked using it
Here is a gif of how Rustree looks with all the themes in fltk-rs:
Themes

@MoAlyousef
Copy link
Collaborator Author

Thank you. I've added Rustree to the showcase. The idea itself is interesting. I also tried building on linux and it does build:
image

YoungHaKim7 added a commit to YoungHaKim7/rust_gui_app that referenced this issue Feb 12, 2024
@MoAlyousef
Copy link
Collaborator Author

I don’t think it would be appropriate. If a developer decides to quit their own project, it’s their prerogative.
Having other people’s code in the demos repo, might make them uncomfortable. It would also imply that such code would need to be maintained by someone who knows the code, in which case they’re bettor off forking the project and maintaining it there.

@NoelJacob
Copy link

Maybe it could be inside a folder called external_demos with readme telling that its user submitted content. Or we could have a separate repo but that might be unnecessary and not get traction.

@fltk-rs fltk-rs deleted a comment from theavege Jul 26, 2024
@fltk-rs fltk-rs deleted a comment from theavege Jul 26, 2024
@fltk-rs fltk-rs deleted a comment from theavege Jul 26, 2024
@fltk-rs fltk-rs deleted a comment from theavege Jul 26, 2024
@PiyushXCoder
Copy link

This is my fltk-rs project.
IT is a tool to make posts in bulk for social media.

https://github.com/PiyushXCoder/post_maker

image

@MoAlyousef
Copy link
Collaborator Author

Thank you @PiyushXCoder.
Very cool app.
Added

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

10 participants