Freightrain
Ruby desktop development made easy
Install / Use
/learn @bolthar/FreightrainREADME
= freightrain
full speed ahead!
== WHAT IS IT? Freightrain is a MVVM (model/view/viewmodel) framework for developing desktop applications in ruby
== HOW DO I GET IT?
If you plan to use the gtk+ extensions (the best supported at the moment), you should also have the gtk2 gem installed. Before installing the gem you should also have the dev library for pango, cairo, glib and gtk2 installed. On ubuntu you can get all you need with:
sudo apt-get install libgtk2.0-dev libruby1.9 ruby1.9-dev
gem install gtk2
When you're done with that you can install freightrain with:
gem install freightrain
== QUICK START
gem install freightrain
gem install gtk2
ftrain app testapp
cd testapp
ruby testapp.rb
after that, you should see an empty window.
== HOW DO I USE IT?
There are small examples in the /examples repository folder. There is also a tutorial (under construction, by Eric Cunningham) here : http://sites.google.com/site/freightrainlib
An up to date larger example : http://github.com/bolthar/intersect
After installing the freightrain gem using the above instructions, to get a working stub open a terminal and type in: ftrain app my_app this will create a new directory my_app containing the application stub. To run the stub application, cd into the directory and type: ruby my_app.rb this should pop up an empty window with the title 'my_app'.
'ftrain' command not working? Look here => http://stackoverflow.com/questions/909673/gems-and-ubuntu-9-04
= THANKS TO: == Jan Pliz For his help with the qtruby bindings
== Eric Cunningham For bug reports, fixing the instructions, troubleshooting and building the tutorial at http://sites.google.com/site/freightrainlib
Related Skills
node-connect
349.9kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.9kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.9kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
