forwardemail / forwardemail/superagent

Extend support for Titanium SDK

Open
#529 15 comments 0 reactions 0 assignees View on GitHub
Browser Feature
Dominant language
JavaScript
Stars
16.6k
Forks
1.3k
PR merge metrics
No merged PRs in 30d

Description

At @smclab we extended the support of `superagent` to Titanium SDK on a project called [_ti-superagent_](https://github.com/smclab/ti-superagent/).

Are the maintainers of `superagent` willing to accept some contribution in order to either
1. make the required changes easier to maintain or
2. make the package itself compatible with TitaniumSDK?

In case we chose to extend `superagent`’s itself, are you willing to accept to have another test environment? Those tests would run as _native iOS, Android and (later this year) Windows_ applications.

Don’t hesitate in asking everything about either Titanium SDK, the changes we made and how we plan to have native tests running.

---
#### Some background about Titanium SDK

Titanium SDK is a platform to build cross-platform mobile apps using JavaScript and native views and components. No WebViews are harmed in a Titanium SDK app.

That means that they use **just** JSC on iOS and V8 on Android, and many things had to be re-implemented. Among those we can highlight `Titanium.Network.HTTPClient` which is an API [almost, but not quite, entirely unlike](https://en.wikipedia.org/wiki/Phrases_from_The_Hitchhiker%27s_Guide_to_the_Galaxy#Not_entirely_unlike) `XMLHttpRequest`.

To make `superagent` work we needed to
- apply some changes as monkey patches,
- create a way to distribute packages written in the node de-facto standard as Titanium CommonJS modules (zipfiles with some standard files in it).

To solve the packaging issue we built [_titaniumifier_](https://github.com/smclab/titaniumifier).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.