node package manager
Loosely couple your services. Use Orgs to version and reuse your code. Create a free org »

tibet

TIBET

The Sum Of The Parts, Not Some Of The Parts™

                                 ,`
                          __,~//`
       ,///,_       .~///////'`
           '//,   ///'`
              '/_/'
                `
        /////////////////     /////////////// ///
        `//'````````///      `//'```````````  '''
        ,/`          //      ,/'
       ,/___          /'    ,/_____
      ///////;;,_     //   ,/////////;,_
               `'//,  '/            `'///,_
                   `'/,/                '//,
                      `/,                  `/,
                        '                   `/
                                             '/
                                              /
                                              '


TIBET's Good Parts focus on solving business problems.


TIBET is a seamlessly integrated web platform, not an à la carte mashup, a solution offering the ultimate client stack coupled with revolutionary tooling.

TIBET is built for projects that need a turnkey client OR full-stack web platform and the confidence that comes from using a fully supported open source solution.

TIBET is easy to use, reducing technical complexity and costly dependence on jedis, gurus, ninjas, rockstars, superheros, wizards, warlords, and other forms of unobtainium.

Building a desktop-class web application? We built TIBET for you.



First Steps

Tour the web's best development platform for business:

TIBET Solutions Description / Features
Client Stack The components every desktop-class application needs
Power Tools Immersive tooling built to keep you in the flow full-time
Server-Side Optional full-stack server and micro-service components
Desktop Apps Desktop application options for zero server deployments
Cloud Services Cloud-based services to offload application administration

Explore TIBET's unique design goals: The Zen Of TIBET

Experience TIBET for yourself: TIBET Quickstart Guide

See TIBET in action on the TIBET JavaScript Channel



Installation

Check your OS, browser, and Node/npm versions against TIBET's prerequisites.

If you prefer to install via git see the TIBET Git Installation instructions.

Installing TIBET via npm

TIBET should be installed globally using npm install -g:

npm install -g tibet

Initial installation process can take several minutes depending on the speed of your network connection and the particular version being installed. Be patient :).

Once your installation completes check out the TIBET Quickstart Guide.


Documentation

Documentation

Concepts

The Technical Pursuit website provides extensive tutorials, whitepapers, and other conceptual and design documentation. We strongly recommend you take a few minutes to scan it.

Tutorials

Guidelines

White Papers

Command Line

Use tibet help for more information on the TIBET CLI and the available command set for your version, or check out the full TIBET CLI documentation.

API Docs

tibet reflect

API documentation is generated for your TIBET version via tibet reflect at the command line and via :reflect from within the TIBET Shell. TIBET's reflect options can output type lists, method lists, or individual object documentation.

tibet apropos

To explore TIBET functionality use the tibet apropos command or :apropos from the TIBET Shell. The apropos feature scans method names and comments for matching terms, letting you search TIBET for functionality that relates to a topic.

Your Docs

tibet reflect and tibet apropos work on your code as well.

TIBET's tools use runtime metadata and their knowledge of your code to produce documentation for both the library and your application code. All you need to do is use jsdoc3 comment syntax and place your comments inside the method body.

See TIBET source code for examples on how to author for live runtime docs.



Prerequisites

Supported platforms

TIBET CLI / Server

The TIBET CLI, TIBET Server, TIBET Workflow System and other server-side components are fully-supported on MacOS and common Linux variants.

TIBET's command line and server components are being ported to Windows. In the meantime we recommend using Docker or similar container technology if you are a Windows-based developer. Pre-built Docker images will be available in an upcoming release.

TIBET Client / Sherpa
Platform TIBET Client Runtime TIBET Live Patching TIBET Sherpa
Google Chrome Yes Yes Yes
Mozilla Firefox Yes Yes Coming Soon
Apple Safari Yes Yes Coming Soon
Electron Yes Coming Soon Coming Soon
Microsoft Edge Future Future Future
Microsoft IE No No No

Install Node.js

TIBET requires Node.js version 4+ (6+ is recommended).

We also recommend using npm version 3.x (some TIBET dependencies have shown installation glitches using version 5.x of npm).

We strongly recommend you use the Node Version Manager (nvm) to manage your Node.js installation. Using nvm lets you install multiple versions of Node.js and switch between them with ease which is great for development and helpful if you need to adjust the version running in production while maintaining an easy rollback strategy.

To install Node.js via nvm see the instructions at the nvm GitHub repo.

To install Node.js without nvm follow the instructions at nodejs.org.

Update/Adjust npm

If you already have a recent version of Node.js installed you should have a valid version of npm. Unfortunately some older versions (1.x) of npm suffer from race condition errors and some newer (5.x) versions cause problems with certain dependent modules like phantomjs-prebuilt. We suggest using npm 3.x.

npm install -g npm@3

If you see errors from any npm-based operations mentioning cb() never called! you'll want to perform the step above, or the appropriate step for your operating system. See this npm troubleshooting topic for more.



Installing TIBET via Git

If you prefer working from a git repository you can install TIBET via git. This approach can take a fair amount of time depending on connection and machine speed since you'll need to download all of TIBET's dependencies and build them locally.

First, uninstall any npm-installed version of TIBET

If you have already installed TIBET via npm you need to first remove that installation to avoid conflicts with your Git-based installation:

npm uninstall -g tibet
Create a Fork

If you are going to install TIBET via Git we recommend that you first create a fork of TIBET so you can manage updates in a stable, predictable fashion.

Follow these instructions to create your own fork.

Clone your Fork
git clone {{your_fork_repo_url}}
Initialize your Fork

Once your fork has been cloned move into the new fork directory and install the package dependencies:

cd {{your_fork_repo_directory}}
npm install .
Link TIBET via npm

With your fork initialized you'll need to link the repository via npm link so that the tibet command will function. From the top of your TIBET fork type:

npm link .

You should now be able to use the `tibet` command which lets you run `tibet build`.
Build TIBET Dependencies and Packages

When working with a git-based repository you'll need to rebuild TIBET packages and dependencies, depending on your individual project launch configuration.

To build the full set of TIBET dependencies and launch packages use:

tibet build_all

NOTE: the above command can take quite some time depending on your network connection, machine performance, etc. since it's building a large set of dependent modules in addition to TIBET itself.

With TIBET cloned, initialized, linked, and built you're ready to rock.


Feedback

Feedback

The best way to communicate an issue, feature request, or code-related concern is to use the GitHub-based issues list for TIBET.

Additional contact info is provided on the contact page at www.technicalpursuit.com.



License

TIBET is Open Source under the OSI-approved Reciprocal Public License (RPL).

You should read the license but, in short, the RPL requires those who deploy applications incorporating RPL'd code to reciprocate by open sourcing their code.

If you are unable to open source your TIBET-related code you can purchase a privacy waiver which allows you to keep your source code private while helping fund further TIBET development. Read more about privacy waivers at https://www.technicalpursuit.com/license.xhtml.


The Pup

Contact us for more information, or to discuss how we can assist you.