Terrarium-app - UI Prototyping Tool for Coders

Overview

Terrarium - UI Prototyping Tool for Coders

Doge

Terrarium is a cross platform QML Playground: the view renders lively as you type in the editor, makes prototyping and experimenting with QtQuick a lot more fun!

It monitors changes in its TextEdit, and triggers the view to reload source from the local http server. If you're looking for a file system watcher implementation, please refer to QML LiveReload.

More details on http://www.terrariumapp.com

Download

Build Instructions

git clone https://github.com/penk/terrarium-app.git
cd terrarium-app && git submodule init && git submodule update
qmake && make

Platform Specific Instructions

For Arch-Linux

Just go to AUR: yaourt -S terrarium-git

For Mac OSX/iOS

To add icons to iOS build, first generate and open Terrarium.xcodeproj, switch AppIcon to use Assets Catalog, then replace Terrarium/Images.xcassets/ directory with platform/ios/Images.xcassets.

As for Mac OSX, refer to macdeployqt command in terrarium-app.pro file.

For Ubuntu Desktop/Phone

If you're using Qt packages from apt archive instead of qt-project.org releases, here's the dependencies:

sudo apt-get install qt5-qmake qt5-default qtbase5-dev qtdeclarative5-dev build-essential

All debian/ package information can be found under platform/ubuntu/ directory, copy it to current path and build the package by:

cp -r platform/ubuntu/debian .
cp platform/ubuntu/terrarium.desktop .
dpkg-buildpackage -b

If you're building click package, execute following command on device (for native compile):

cp platform/ubuntu/* .
click build .

And install it

pkcon --allow-untrusted install-local com.ubuntu.developer.penk.terrarium_1.5_armhf.click

For Android

First generate your keystore by keytool

keytool -genkey -v -keystore ../TerrariumApp.keystore -alias TerrariumApp -keyalg RSA -keysize 2048 -validity 10000

then

~/Qt5.4.1/5.4/android_armv7/bin/qmake
make
make install INSTALL_ROOT=../android-terrarium

Build and sign apk by:

~/Qt5.4.1/5.4/android_armv7/bin/androiddeployqt --input \
    android-libTerrarium.so-deployment-settings.json \
    --output ../android-terrarium --release --sign ../TerrariumApp.keystore TerrariumApp

Screenshots

LICENSE

Copyright © 2014-2015 Ping-Hsun (penk) Chen [email protected]
The source code is, unless otherwise specified, distributed under the terms of the MIT License.

CREDITS

Comments
  • Fix scrolling velocity that is inappropriate for trackpad

    Fix scrolling velocity that is inappropriate for trackpad

    The default platform velocity for flickable would render Terrarium unusable on a Mac with a trackpad. One single tiny flick would send the text area out of bounds.

    This patch fixes this, also changing the default font to cope with Terminal.app (this change could be discussed.)

    opened by rschiang 1
  • Autocomplete support

    Autocomplete support

    Hi!

    Just found about Terrarium and it looks really interesting! Congrats!

    Are there any plans to add autocomplete support? This would really help people starting to learn QML.

    opened by jamiefoster 1
  • yoooooooooooooooo

    yoooooooooooooooo

    commit 9143dc427a4ce3d523c5a49936966117c4c2df91 Author: AceLan Kao [email protected] Date: Thu Nov 6 00:17:17 2014 +0800

    Android: Hide the status bar
    
    Signed-off-by: AceLan Kao <[email protected]>
    

    commit e13f1536f757f7b5cca199b4b6c0b917d6516180 Author: AceLan Kao [email protected] Date: Thu Nov 6 00:15:51 2014 +0800

    Remove redundant newlines and fix indent
    
    Signed-off-by: AceLan Kao <[email protected]>
    
    opened by acelan 1
  • Enable switching between editor / viewer fullscreen

    Enable switching between editor / viewer fullscreen

    Lacking an editor mode would be inconvenient on small screen devices such as mobile phone. This pull request expands splitView into a tri-state toggle between splitted, viewer, editor, also tweaked the transition animations between states.

    opened by rschiang 1
  • [Feature Request] A message window to show the error of editing QML source code

    [Feature Request] A message window to show the error of editing QML source code

    When user made any syntax error on the editing QML source code , it will simply clear the preview and user will not know what is wrong with their code. Therefore, I would like to suggest to add a message window that could report the errors with line no. So that user could know what is wrong with their code and correct it.

    opened by benlau 1
  • Add QuickItemGrabber - Grabs QQuickItem into QImage

    Add QuickItemGrabber - Grabs QQuickItem into QImage

    It is patch to add a Grabber object into the programming environment so that user may grab their created item into an image file.

    Example code:

    import QtQuick 2.0

    Rectangle {
    color : "white"

    Grid {
        id: icon
        anchors.centerIn: parent
        rows: 4
        columns : 4
        spacing : 0
    
        Repeater {
            model : ['#F44336',
                    '#E91E63',
                    '#9C27B0',
                    '#673AB7',
                    '#3F51B5',
                    '#2196F3',
                    '#03A9F4',
                    '#00BCD4',
                    '#009688',
                    '#4CAF50',
                    '#8BC34A',
                    '#CDDC39',
                    '#FFEB3B',
                    '#FFC107',
                    '#FF9800',
                    '#FF5722'
            ]
            delegate: Rectangle {
                width: 32
                height:32
                color : modelData
            }
        }
    
    
    }    
    
    
    Connections {
            target: Grabber
            onGrabbed:{
                Grabber.save("icon.png");
                Grabber.clear();
            }
    }
    
    MouseArea {
        anchors.fill: parent
        onClicked: Grabber.grab(icon);
    }
    

    }

    opened by benlau 0
  • Project: Mac: add QMAKE_MAC_SDK

    Project: Mac: add QMAKE_MAC_SDK

    I got this error while compiling for OSX $ ~/Qt/5.3/clang_64/bin/qmake Project ERROR: Could not resolve SDK path for 'macosx10.8'

    And check what version of SDK do I have, I found there are 10.9 and 10.10 $ ls /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/ MacOSX10.10.sdk MacOSX10.9.sdk

    I think we should all use the latest SDK, so I add this in project file QMAKE_MAC_SDK = macosx10.10

    Signed-off-by: AceLan Kao [email protected]

    opened by acelan 0
  • AppImage for Linux

    AppImage for Linux

    Providing an AppImage would have, among others, these advantages:

    • Applications packaged as an AppImage can run on many distributions (including Ubuntu, Fedora, openSUSE, CentOS, elementaryOS, Linux Mint, and others)
    • One app = one file = super simple for users: just download one AppImage file, make it executable, and run
    • No unpacking or installation necessary
    • No root needed
    • No system libraries changed
    • Works out of the box, no installation of runtimes needed
    • Optional desktop integration with appimaged
    • Optional binary delta updates, e.g., for continuous builds (only download the binary diff) using AppImageUpdate
    • Can optionally GPG2-sign your AppImages (inside the file)
    • Works on Live ISOs
    • Can use the same AppImages when dual-booting multiple distributions
    • Can be listed in the AppImageHub central directory of available AppImages
    • Can double as a self-extracting compressed archive with the --appimage-extract parameter

    Here is an overview of projects that are already distributing upstream-provided, official AppImages.

    If you have questions, AppImage developers are on #AppImage on irc.freenode.net.

    opened by probonopd 2
Releases(V1.5)
Owner
Penk Chen
A digital nomad from Taiwan
Penk Chen
AppLove - View iOS app reviews in multiple selected territories with translation option.

App Love Note: Swift Version 2.2 currently, will update to Swift 3/XCode 8 after cocoapods are updated to Swift 3. Features View iOS Customer App Revi

Woodie Dovich 52 Nov 19, 2022
Bitrise-iOS - Client iOS app for bitrise.io 🚀

?? SwiftUI version is available as beta ?? Bitrise iOS Client app ?? Features ✅ App List GET /me/apps Shows last visited app page on launch ✅ Build Li

Toshihiro Suzuki 142 Dec 19, 2022
IOS - Unofficial app for Swift Evolution

EVOlution - iOS The goal of this project is for the version 1.0 was: bring to iOS the experience provided by Swift Evolution website. Now we are shift

EVOlution App 235 Dec 19, 2022
Monkey is an unofficial GitHub client for iOS,to show the rank of coders and repositories.

Monkey for GitHub 中文README Monkey is an unofficial GitHub client. Monkey for GitHub is my first App,open source project.Welcome to download. GitHub op

coderyi 1.8k Jan 6, 2023
Easy and lightweight network layer for creating different set of network requests like GET, POST, PUT, DELETE customizable with coders conforming to TopLevelDecoder, TopLevelEncoder

Easy and lightweight network layer for creating different set of network requests like GET, POST, PUT, DELETE customizable with coders conforming to TopLevelDecoder, TopLevelEncoder

Igor 2 Sep 16, 2022
SwiftUI Prototyping Wallet App Interactive UI

Wallet SwiftUI Prototyping Wallet App Interactive UI

Areg Vardanian 0 Dec 18, 2021
A zero-code template app that demonstrates how to use TheraForge's APIs and can be used for fast prototyping

TheraForge MagicBox 1.0.0-beta The Open TheraForge (OTF) MagicBox app is a template for creating digital health solutions that help people better mana

TheraForge 0 Dec 23, 2021
Aids with prototyping UIGestureRecognizers in Xcode Playgrounds

SwiftyGestureRecognition A drop-in library for extending UIGestureRecognizers to aid in prototyping with them in Xcode Playgrounds. Definitely not pri

Adam Bell 161 Dec 16, 2022
Flexible JSON traversal for rapid prototyping

RBBJSON RBBJSON enables flexible JSON traversal at runtime and JSONPath-like que

Robb Böhnke 164 Dec 27, 2022
Prototyping Stream Chat iOS SDK with SwiftUI.

Prototyping Stream Chat iOS SDK with SwiftUI.This project includes layout and composition of the main screens such as the channel list (contacts), select user and chats (conversations). Additionally there are several SwiftUI animations along with interaction styles.

Stream 9 Jan 8, 2023
Swift library of lightweight interfaces for prototyping, bridged to JS

Prototope Prototope is a lightweight, high-performance prototyping framework. Its goals are: making simple things very easy making complex things poss

Khan Academy 230 Jun 29, 2022
CardGameEngine - Prototyping a game engine for the Bang card game

CardGameEngine Prototyping a game engine for the Bang card game. Features Engine is open source Powerful scripting language using JSON Card design is

stephtelolahy 5 Nov 22, 2022
A Swift package that provides convenient Lorem Ipsum text, images, colors and other placeholders for rapidly prototyping, building and testing your iOS applications.

Lorem Introducing Lorem, a placeholder generator library for iOS to help you rapidly prototype, build and test your iOS applications. By leveraging Sw

Thirdfort Limited 10 Dec 5, 2022
DevTool - A simple UI and powerful Mac OS application, Such as JSON-Formatting tool, JSON-to-model tool, AppIcon generator, Network-Request tool...

?? ?? ?? A simple UI and powerful Mac OS application. It is a collection of tools commonly used in my development work. Such as JSON-Formatting tool, JSON-to-model tool, AppIcon generator, Network-Request tool...

渠晓友 3 Dec 21, 2022
ipatool is a command line tool that allows you to search for iOS apps on the App Store and download a copy of the app package, known as an ipa file.

ipatool is a command line tool that allows you to search for iOS apps on the App Store and download a copy of the app package, known as an ipa file.

Majd Alfhaily 3k Dec 30, 2022
This is a command line tool to extract an app icon. this sample will extract the icon 16x16 from Safari app.

?? X-BundleIcon This is a command line tool to extract an app icon. this sample will extract the icon 16x16 from Safari app. xbi com.apple.Safari 16 /

Rui Aureliano 3 Sep 1, 2022
In-App iOS Debugging Tool With Enhanced Logging, Networking Info, Crash reporting And More.

The debugger tool for iOS developer. Display logs, network request, device informations, crash logs while using the app. Easy accessible with its bubble head button ?? . Easy to integrate in any apps, to handle development or testing apps easier. First version, there is plenty of room for improvement.

Remi ROBERT 1.8k Dec 29, 2022
iOS command-line tool that allows searching and downloading ipa files from the iOS App Store

ipatool for iOS This is a port of Majd Alfhaily's ipatool adapted to run on iOS Build / Installation To build this, make sure you have AppSync install

dan 21 Sep 13, 2022
Fastbot is a model-based testing tool for modeling GUI transitions to discover app stability problems

Fastbot is a model-based testing tool for modeling GUI transitions to discover app stability problems. It combines machine learning and reinforcement learning techniques to assist discovery in a more intelligent way.

Bytedance Inc. 446 Dec 29, 2022
This package will contain the standard encodings/decodings/hahsing used by the String Conversion Tool app.

This package will contain the standard encodings/decodings/hahsing used by the String Conversion Tool app. It will also, however, contain extra encoding/decoding methods (new encoding/decoding)

Gleb 0 Oct 16, 2021