Project

funicular

0.0
No release in over 3 years
Funicular enables you to write client-side UI components in Ruby, powered by PicoRuby.wasm
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Runtime

~> 8.0
 Project Readme

Funicular

🎡Funicu-lì, Funicu-là!🚊🚊🚊

🎡Funicu-lì, Funicu-là!🚞🚞🚞

Funicular is a single-page application (SPA) framework powered by PicoRuby.wasm.

Features

  • Write client-side code in Ruby instead of JavaScript
  • Seamless Rails integration

Combined Gem

This repository consists of three relevant projects:

  • PicoGem "picoruby-funicular" ... Core implementation
  • CRubyGem "funicular" ... Rails integration
  • Chrome extension "PicoRuby Debugger"

PicoGem "picoruby-funicular"

.
β”œβ”€β”€ mrbgem.rake
β”œβ”€β”€ mrblib/
└── test/

CRubyGem "funicular"

.
β”œβ”€β”€ bin/
β”œβ”€β”€ exe/
β”œβ”€β”€ funicular.gemspec
β”œβ”€β”€ Gemfile
β”œβ”€β”€ Gemfile.lock
β”œβ”€β”€ lib/
β”œβ”€β”€ minitest/
└── Rakefile

Chrome extention "PicoRuby.wasm debugger"

.
└── debugger/

The others are common resources.

Documentation

You may want to see Tic-Tac-Toe tutorial first: https://picoruby.org/funicular

Then, dig docs/.

Development

This repository is a submodule of picoruby/picoruby. Do not check it out standalone. Instead, clone the parent repository and work from there:

git clone --recurse-submodules https://github.com/picoruby/picoruby.git
cd picoruby/mrbgems/picoruby-funicular

The CRubyGem side (lib/, funicular.gemspec, etc.) can be developed and tested independently inside that directory, but rake copy_wasm β€” which vendorsthe PicoRuby.wasm and picorbc wasm artifacts into the gem β€” relies on sibling directories within the picoruby repository (mrbgems/picoruby-wasm/npm/). Running it from a standalone checkout will fail.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/picoruby/funicular.

License

Copyright Β© 2025- HASUMI Hitoshi. See MIT-LICENSE for further details.