Git Product home page Git Product logo

tangelo's Introduction

License https://travis-ci.org/Kitware/tangelo.svg?branch=master https://readthedocs.org/projects/pip/badge/

Tangelo: A Web Application Platform for Python Programmers

Tangelo reimagines the "web application" by bringing Python into the fold: in addition to serving standard components such as HTML, CSS, and JavaScript files in the usual way, Tangelo also manufactures serverside web services from Python files in your application. These services might provide custom adapters to databases, launch complex jobs on a cluster to retrieve the results later, perform image analysis, or really anything that can be done in a Python script. The Python standard library is extensive, and the galaxy of third-party libraries even more so. Instead of demanding that you adapt your code to a complex web framework, worrying about routing and scaffolding along the way, Tangelo adapts to you, effortlessly integrating your Python code right into your web application.

Tangelo runs these expanded web applications with a special purpose webserver, built on top of CherryPy, which runs the Python scripts on demand, allowing your HTML and JavaScript to retrieve content from the scripts. The result is a rich web application that pairs your data with cutting-edge visual interfaces.

Tangelo comes bundled with some great examples to get you started. Mix and match from the following to create your own breed:

  • Bootstrap to put your app's style on a solid footing.
  • D3 for constructing all manner of dynamic and animated charts.
  • Vega, a brand new declarative language for defining visual interfaces.
  • MongoDB for a flexible, speedy NoSQL backend to feed data to your apps.
  • Bundled Tangelo plugins, providing utilities such as streaming of big data, basic visualization elements such as interactive charts, and user interface elements.

Get Started

Quick Start

To get started with Tangelo's example application pack, run the following:

$ pip install tangelo
$ tangelo --examples

and then visit http://localhost:8080 in your favorite web browser.

Hello World

Follow these steps to create an extremely simple Tangelo application:

$ mkdir hello
$ cd hello
$ vim helloworld.py
import datetime

def run():
    return "hello, world - the current time and date is: %s\n" % (datetime.datetime.now())
$ tangelo --port 8080
$ curl http://localhost:8080/helloworld

hello, world - the current time and date is: 2015-03-31 14:29:44.29411

Learn More

See Tangelo's documentation for a getting started guide, advanced usage manual, step-by-step tutorials, and API descriptions.

Read our ongoing blog series for some in-depth discussion of Tangelo and its uses.

Visit the website to learn about Tangelo and its sibling software projects in the TangeloHub platform, and about how Kitware can help you make the most of your data, computational resources, and web applications.

Get Involved

Please join our mailing list to ask questions about setting up and using Tangelo.

Fork our repository and do great things. At Kitware, we've been contributing to open-source software for 15 years and counting, and want to make Tangelo as useful to as many as possible.

Acknowledgement

Tangelo development is sponsored by the Air Force Research Laboratory and DARPA XDATA program.

tangelo's People

Contributors

aslagle avatar cjh1 avatar cpatrick avatar jason-li avatar jbeezley avatar jeffbaumes avatar manthey avatar mathstuf avatar patricktgill avatar scotthaleen avatar waxlamp avatar zackgalbreath avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.