
Security News
Nx npm Packages Compromised in Supply Chain Attack Weaponizing AI CLI Tools
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.
ProMotion was created by Infinite Red, a web and mobile development company based in Portland, OR and San Francisco, CA. While you're welcome to use ProMotion, please note that we rely on the community to maintain it. We are happy to merge pull requests and release new versions but are no longer driving primary development.
ProMotion is a RubyMotion gem that makes iOS development more like Ruby and less like Objective-C. It introduces a clean, Ruby-style syntax for building screens that is easy to learn and remember and abstracts a ton of boilerplate UIViewController, UINavigationController, and other iOS code into a simple, Ruby-like DSL.
# app/app_delegate.rb
class AppDelegate < PM::Delegate
status_bar true, animation: :fade
def on_load(app, options)
open RootScreen
end
end
# app/screens/root_screen.rb
class RootScreen < PM::Screen
title "Root Screen"
nav_bar true
def on_load
set_nav_bar_button :right, title: "Help", action: :open_help_screen
end
def open_help_screen
open HelpScreen
end
end
# app/screens/help_screen.rb
class HelpScreen < PM::TableScreen
title "Table Screen"
def table_data
[{
title: "Help",
cells: [
{ title: "About this app", action: :tapped_about },
{ title: "Log out", action: :log_out }
]
}]
end
def tapped_about(args={})
open AboutScreen
end
def log_out
# Log out!
end
end
Screens | Navigation Bars | Tab Bars |
---|---|---|
![]() | ![]() | ![]() |
Table Screens | Grouped Tables | Searchable | Refreshable |
---|---|---|---|
![]() | ![]() | ![]() | ![]() |
SplitScreens | Map Screens | Web Screens |
---|---|---|
![]() | ![]() | ![]() |
Open a pull request! We love adding new ProMotion-built apps.
We have comprehensive documentation with code examples, usage examples, and API reference.
ProMotion is not only an easy DSL to get started. The community is very helpful and welcoming to new RubyMotion developers. We don't mind newbie questions.
The quickest way to get help is to join the Motioneers Slack Group. If you still need help, feel free to open an issue on GitHub. If we don't respond within a day, tweet us a link to the issue -- sometimes we get busy.
ProMotion, as an open source project, is free to use and always will be. Infinite Red offers premium ProMotion support and general mobile app design/development services. Email us at hello@infinite.red to get in touch with us for more details.
See CONTRIBUTING.md.
FAQs
Unknown package
We found that ProMotion demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.
Security News
CISA’s 2025 draft SBOM guidance adds new fields like hashes, licenses, and tool metadata to make software inventories more actionable.
Security News
A clarification on our recent research investigating 60 malicious Ruby gems.