Code Monkey home page Code Monkey logo

tapestry's Introduction

Tapestry

Introduction

This public repository contains information about the Project Tapestry prototype. It does not contain the source code for the app.

Note also that this is a work-in-progress and details are certain to change.

Documentation

A JavaScript-based API is used by Tapestry to gather information from the public Internet.

This document explains the variables, objects, actions, and functions that are available for JavaScript development. A section at the end explains how plug-ins are configured.

There is also a PDF with the prototype architecture. Everything in dark blue is covered in the document above.

Plugins

The Plugins folder shows examples of plugins that were created for the prototype. Each plugin is listed using a reverse domain name identifier.

Each plug-in has a configuration file that provides metadata to the prototype. For example, if OAuth is needed to make requests.

There is also a user interface configuration that specifies inputs for settings and variables for JavaScript code.

Finally, there is the JavaScript that implements the plug-in. The most complex example is the one used for Mastodon (138 lines). A simpler example checks the USGS Earthquake Summary (41 lines).

We feel confident that this simple API can be used to handle any information on the public Internet. (Even XML!)

Ideally, these plug-ins should be user installable. For example, if you have custom built Raspberry Pi monitoring your garden's water tank, it could be added to Tapestry to give periodic updates in a timeline. The challenge to accomplish that goal is building a secure distribution system for plug-ins.

Tapestry Loom

You can use the plug-ins above with our developer tool: Tapestry Loom. Download the macOS app and copy the plug-ins above to the plugins folder (click the "Open Plugins…" button to get there quickly). You can also add your own plug-ins to that folder and restart the app to test them out.

Screencast

For an in-depth look at what you can do with these files, take a moment to watch Project Tapestry - Weaving An API on YouTube. This 30 minute video will help you get set up, show some tip and tricks, and give you a demo of how they're used in an iOS app.

Kickstarter

We are running a Kickstarter to fund a native iOS app based on this prototype. If the idea of a configurable and customizable Internet excites you, please check it out!

tapestry's People

Contributors

chockenberry avatar simonbs 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.