# Web APIs

Programming interfaces available for developing web applications and sites.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Launching MDN's new front end

DevFeed: [Launching MDN's new front end](<https://devfeed.tech/articles/launching-mdn-s-new-front-end-4086.md>)

Original publisher: [Read original article](<https://developer.mozilla.org/en-US/blog/launching-new-front-end/>)

Author: mdn-team

Published: 2025-08-19T00:00:00Z

Content type: article

Language: en

Sources: [MDN Blog](<https://devfeed.tech/sources/mdn-blog.md>)

Topics: [Front end](<https://devfeed.tech/topics/frontend.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [Web platform](<https://devfeed.tech/topics/web-platform.md>), [Web Components](<https://devfeed.tech/topics/web-components.md>), [CSS](<https://devfeed.tech/topics/css.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [HTML](<https://devfeed.tech/topics/html.md>), [User interface design](<https://devfeed.tech/topics/ui-design.md>), [Usability](<https://devfeed.tech/topics/usability.md>), [Library](<https://devfeed.tech/topics/library.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [code](<https://devfeed.tech/tags/code.md>), [components](<https://devfeed.tech/tags/components.md>), [css](<https://devfeed.tech/tags/css.md>), [developers](<https://devfeed.tech/tags/developers.md>), [front-end](<https://devfeed.tech/tags/front-end.md>), [github](<https://devfeed.tech/tags/github.md>), [library](<https://devfeed.tech/tags/library.md>), [ui](<https://devfeed.tech/tags/ui.md>), [usability](<https://devfeed.tech/tags/usability.md>), [web](<https://devfeed.tech/tags/web.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>)

### AI overview

MDN has launched a rebuilt front end with a cleaner interface, improved usability, and support for modern CSS and web components. The update also improves typography, code rendering, search, icons, and navigation.

### Source excerpt

MDN is getting a facelift 🎉. Discover what's changed, what's improved, and how navigating the site just got smoother.

## Introducing the WebAssembly JavaScript Promise Integration API

DevFeed: [Introducing the WebAssembly JavaScript Promise Integration API](<https://devfeed.tech/articles/introducing-the-webassembly-javascript-promise-integration-api-3526.md>)

Original publisher: [Read original article](<https://v8.dev/blog/jspi>)

Author: Francis McCabe, Thibaud Michaud, Ilya Rezvov, Brendan Dahl

Published: 2024-07-01T00:00:00Z

Content type: tutorial

Language: en

Sources: [V8](<https://devfeed.tech/sources/v8.md>)

Topics: [WebAssembly](<https://devfeed.tech/topics/web-assembly.md>), [API](<https://devfeed.tech/topics/api.md>), [Promise](<https://devfeed.tech/topics/promise.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [apis](<https://devfeed.tech/tags/apis.md>), [code](<https://devfeed.tech/tags/code.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [web](<https://devfeed.tech/tags/web.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>), [webassembly](<https://devfeed.tech/tags/webassembly.md>)

### AI overview

This article introduces the WebAssembly JavaScript Promise Integration (JSPI) API. JSPI enables WebAssembly applications designed around synchronous APIs to work with asynchronous JavaScript and Web APIs by suspending execution during asynchronous operations and resuming it when they complete. The approach requires few changes to the WebAssembly application and is illustrated with development guidance and examples.

### Source excerpt

The JavaScript Promise Integration (JSPI) API allows WebAssembly applications that were written assuming synchronous access to external functionality to operate smoothly in an environment where the functionality is actually asynchronous. This note outlines what the core capabilities of the JSPI API are, how to access it, how to develop software for it and offers some examples to try out. What is 'JSPI' for? # Asynchronous APIs operate by separating the initiation of the operation from its resolution; with the latter coming some time after the first. Most importantly, the application continues execution after kicking off the operation; and is then notified when the operation completes. For example, using the fetch API, Web applications can access the contents associated with a URL; however, the fetch function does not directly return the results of the fetch; instead it returns a Promise object. The connection between the fetch response and the original request is reestablished by attaching a callback to that Promise object. The callback function can inspect the response and collect the data (if it is there of course). On the other hand, many cases C/C++ (and many other languages) applications are originally written against a synchronous API. For example, the Posix read function does not complete until the I/O operation is complete: the read function blocks until the read is complete. However, it is not permitted to block the browser's main thread; and many environments are not supportive of synchronous programming. The result is a mismatch between the desires of the application programmer for a simple to use API and the wider ecosystem that requires I/O to be crafted with asynchronous code. This is especially a problem for existing legacy applications that would be expensive to port. The JSPI is an API that bridges the gap between synchronous applications and asynchronous Web APIs. It works by intercepting Promise objects returned by asynchronous Web API functions a

## WebAssembly JSPI is going to origin trial

DevFeed: [WebAssembly JSPI is going to origin trial](<https://devfeed.tech/articles/webassembly-jspi-is-going-to-origin-trial-3528.md>)

Original publisher: [Read original article](<https://v8.dev/blog/jspi-ot>)

Author: Francis McCabe, Thibaud Michaud, Ilya Rezvov, Brendan Dahl

Published: 2024-03-06T00:00:00Z

Content type: tutorial

Language: en

Sources: [V8](<https://devfeed.tech/sources/v8.md>)

Topics: [WebAssembly](<https://devfeed.tech/topics/web-assembly.md>), [API](<https://devfeed.tech/topics/api.md>), [Chrome](<https://devfeed.tech/topics/chrome.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [Promise](<https://devfeed.tech/topics/promise.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [chrome](<https://devfeed.tech/tags/chrome.md>), [garbage-collection](<https://devfeed.tech/tags/garbage-collection.md>), [pre-release](<https://devfeed.tech/tags/pre-release.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>), [webassembly](<https://devfeed.tech/tags/webassembly.md>)

### AI overview

WebAssembly's JavaScript Promise Integration (JSPI) API is entering a Chrome M123 origin trial. It lets sequential code compiled to WebAssembly access asynchronous Web APIs by suspending a WebAssembly application when a Promise is returned and resuming it when the Promise resolves. The article explains the Emscripten requirement, origin-trial registration options, standardization status, and performance caveats related to spawned computations and garbage collection.

### Source excerpt

WebAssembly's JavaScript Promise Integration (JSPI) API is entering an origin trial, with Chrome release M123. What that means is that you can test whether you and your users can benefit from this new API. JSPI is an API that allows so-called sequential code - that has been compiled to WebAssembly - to access Web APIs that are asynchronous. Many Web APIs are crafted in terms of JavaScript Promises: instead of immediately performing the requested operation they return a Promise to do so. When the action is finally performed, the browser's task runner invokes any callbacks with the Promise. JSPI hooks into this architecture to allow a WebAssembly application to be suspended when the Promise is returned and resumed when the Promise is resolved. You can find out more about JSPI and how to use it here and the specification itself is here. Requirements # Apart from registering for an origin trial, you will also need to generate the appropriate WebAssembly and JavaScript. If you are using Emscripten, then this is straightforward. You should ensure that you are using at least version 3.1.47. Registering for the origin trial # JSPI is still pre-release; it is going through a standardization process and will not be fully released until we get to phase 4 of that process. To use it today, you can set a flag in the Chrome browser; or, you can apply for an origin trial token that will allow your users to access it without having to set the flag themselves. To register you can go here, make sure to follow the registration signup process. To find out more about origin trials in general, this is a good starting place. Some potential caveats # There have been some discussions in the WebAssembly community about some aspects of the JSPI API. As a result, there are some changes indicated, which will take time to fully work their way through the system. We anticipate that these changes will be soft launched: we will share the changes as they become available, however, the existing API wi

## Some opinionated thoughts on SQL databases

DevFeed: [Some opinionated thoughts on SQL databases](<https://devfeed.tech/articles/some-opinionated-thoughts-on-sql-databases-21965.md>)

Original publisher: [Read original article](<https://blog.nelhage.com/post/some-opinionated-sql-takes/>)

Author: Nelson Elhage

Published: 2021-03-30T17:32:31Z

Content type: opinion

Language: en

Sources: [Nelson Elhage](<https://devfeed.tech/sources/nelson-elhage.md>)

Topics: [Databases](<https://devfeed.tech/topics/databases.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [MySQL](<https://devfeed.tech/topics/mysql.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [SQLite](<https://devfeed.tech/topics/sqlite.md>), [backends](<https://devfeed.tech/topics/backends.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [Latency](<https://devfeed.tech/topics/latency.md>)

Tags: [acid](<https://devfeed.tech/tags/acid.md>), [backends](<https://devfeed.tech/tags/backends.md>), [consistency](<https://devfeed.tech/tags/consistency.md>), [databases](<https://devfeed.tech/tags/databases.md>), [durability](<https://devfeed.tech/tags/durability.md>), [high-availability](<https://devfeed.tech/tags/high-availability.md>), [low-latency](<https://devfeed.tech/tags/low-latency.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [sql](<https://devfeed.tech/tags/sql.md>), [sqlite](<https://devfeed.tech/tags/sqlite.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>)

### AI overview

An opinionated discussion of SQL databases, focused mainly on MySQL and PostgreSQL, with some coverage of SQLite. Drawing on experience using databases as backends for web applications and APIs, the article argues that open-source SQL databases provide excellent storage engines, throughput, durability, and transactional guarantees when properly tuned.

### Source excerpt

People who work with me tend to realize that I have Opinions about databases, and SQL databases in particular. Last week, I wrote about a Postgres debugging story and tweeted about AWS' policy ban on internal use of SQL databases, and had occasion to discuss and debate some of those feelings on Twitter; this article is an attempt to write up more of them into a single place I can refer to.

## Introducing Codename One 7.0 (AKA Video)

DevFeed: [Introducing Codename One 7.0 (AKA Video)](<https://devfeed.tech/articles/introducing-codename-one-7-0-aka-video-19335.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/introducing-codename-one-7-0-aka-video/>)

Author: Shai Almog

Published: 2021-02-05T00:00:00Z

Content type: release

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [WebRTC](<https://devfeed.tech/topics/webrtc.md>), [cross-platform](<https://devfeed.tech/topics/cross-platform.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Single sign-on (SSO)](<https://devfeed.tech/topics/sso.md>), [OAuth](<https://devfeed.tech/topics/oauth.md>), [make](<https://devfeed.tech/topics/make.md>)

Tags: [cross-platform](<https://devfeed.tech/tags/cross-platform.md>), [java](<https://devfeed.tech/tags/java.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [make](<https://devfeed.tech/tags/make.md>), [oauth](<https://devfeed.tech/tags/oauth.md>), [release](<https://devfeed.tech/tags/release.md>), [sso](<https://devfeed.tech/tags/sso.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>), [webrtc](<https://devfeed.tech/tags/webrtc.md>)

### AI overview

This release announcement introduces Codename One 7.0, highlighting cross-platform WebRTC support, a new build app, CEF migration, CodeRAD, website and SSO changes, and several smaller improvements. It also outlines plans for more open architectures and Maven migration in Codename One 8.

### Source excerpt

We're thrilled to announce the immediate availability of Codename One 7.0 (AKA Video). This has been our most challenging release to date. We constantly shifted the release date due to constantly shifting requirements and pivotal changes. Highlights of this Release Here are the highlights of Codename One 7.0 WebRTC Support This is probably one of the biggest challenges we took to date. We now have one of the best cross platform WebRTC implementations. This took a lot of work and proved to be a huge challenge in every single platform.

## Anecdotes about web APIs

DevFeed: [Anecdotes about web APIs](<https://devfeed.tech/articles/anecdotes-about-web-apis-27051.md>)

Original publisher: [Read original article](<https://zsmb.co/anecdotes-about-web-apis/>)

Author: Márton Braun

Published: 2020-04-11T10:00:00Z

Content type: opinion

Language: en

Sources: [zsmb.co](<https://devfeed.tech/sources/zsmb-co.md>)

Topics: [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [X (Twitter)](<https://devfeed.tech/topics/twitter.md>), [android-development](<https://devfeed.tech/topics/android-development.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-development](<https://devfeed.tech/tags/android-development.md>), [api](<https://devfeed.tech/tags/api.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [marton-braun](<https://devfeed.tech/tags/marton-braun.md>), [twitter](<https://devfeed.tech/tags/twitter.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>), [zsmb](<https://devfeed.tech/tags/zsmb.md>), [zsmb-co](<https://devfeed.tech/tags/zsmb-co.md>), [zsmb13](<https://devfeed.tech/tags/zsmb13.md>), [zsmbco](<https://devfeed.tech/tags/zsmbco.md>)

### AI overview

A personal commentary on the importance of web APIs, illustrated through experiences with Twitter's API and an Android learning project. It focuses on the difficulty of retrieving tweet replies and following reply threads when the API lacked a direct query for replies.

### Source excerpt

I think any respectable service these days should offer a web API to paying customers, so that power users of the service can integrate it with other services, and have reliable, trustworthy programmatic access to their data. Here are some anecdotes about services and APIs.

## Tracking API Gateway metrics in Serverless applications

DevFeed: [Tracking API Gateway metrics in Serverless applications](<https://devfeed.tech/articles/tracking-api-gateway-metrics-in-serverless-applications-14283.md>)

Original publisher: [Read original article](<https://www.serverless.com/blog/monitoring-api-gateway-metrics>)

Author: Alex DeBrie

Published: 2019-08-15T00:00:00Z

Content type: tutorial

Language: en

Sources: [Serverless Blog](<https://devfeed.tech/sources/serverless-blog.md>)

Topics: [Serverless](<https://devfeed.tech/topics/serverless.md>), [Amazon API Gateway](<https://devfeed.tech/topics/amazon-api-gateway.md>), [Monitoring](<https://devfeed.tech/topics/monitoring.md>), [serverless framework](<https://devfeed.tech/topics/serverless-framework.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [api-gateway](<https://devfeed.tech/tags/api-gateway.md>), [aws](<https://devfeed.tech/tags/aws.md>), [aws-lambda](<https://devfeed.tech/tags/aws-lambda.md>), [cloud-computing](<https://devfeed.tech/tags/cloud-computing.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [faas](<https://devfeed.tech/tags/faas.md>), [function-as-a-service](<https://devfeed.tech/tags/function-as-a-service.md>), [infrastructure-as-code](<https://devfeed.tech/tags/infrastructure-as-code.md>), [metrics](<https://devfeed.tech/tags/metrics.md>), [monitoring](<https://devfeed.tech/tags/monitoring.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [serverless-architecture](<https://devfeed.tech/tags/serverless-architecture.md>), [serverless-framework](<https://devfeed.tech/tags/serverless-framework.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>)

### AI overview

A tutorial on tracking API Gateway metrics in Serverless applications with the Serverless Framework.

### Source excerpt

Monitoring web APIs in Serverless applications can be difficult. See how to do it with the Serverless Framework.

## Responsive Components: a Solution to the Container Queries Problem

DevFeed: [Responsive Components: a Solution to the Container Queries Problem](<https://devfeed.tech/articles/responsive-components-a-solution-to-the-container-queries-problem-29521.md>)

Original publisher: [Read original article](<https://philipwalton.com/articles/responsive-components-a-solution-to-the-container-queries-problem/>)

Published: 2018-02-27T08:12:12Z

Content type: article

Language: en

Sources: [Philip Walton](<https://devfeed.tech/sources/philip-walton.md>)

Topics: [Responsive Design](<https://devfeed.tech/topics/responsive-design.md>), [CSS](<https://devfeed.tech/topics/css.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [Document Object Model (DOM)](<https://devfeed.tech/topics/dom.md>), [web design](<https://devfeed.tech/topics/web-design.md>)

Tags: [components](<https://devfeed.tech/tags/components.md>), [css](<https://devfeed.tech/tags/css.md>), [demo](<https://devfeed.tech/tags/demo.md>), [developer](<https://devfeed.tech/tags/developer.md>), [responsive-design](<https://devfeed.tech/tags/responsive-design.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>), [web-developers](<https://devfeed.tech/tags/web-developers.md>)

### AI overview

This article explains how to build responsive components that adapt to their containing environment without waiting for CSS container queries. It proposes using currently available web APIs as a progressive enhancement, with generic base styles and environment-specific overrides that continue to work when JavaScript or newer browser features are unavailable.

### Source excerpt

Container queries is a proposal that would allow web developers to style DOM elements based on the size of a containing element rather than the size of the browser viewport. If you're a web developer, you've probably heard about container queries before. For about as long as we've had responsive web design, we've had developers asking for them (initially element queries, then changing to container queries).

## Your CORS and API Gateway survival guide

DevFeed: [Your CORS and API Gateway survival guide](<https://devfeed.tech/articles/your-cors-and-api-gateway-survival-guide-14141.md>)

Original publisher: [Read original article](<https://www.serverless.com/blog/cors-api-gateway-survival-guide>)

Author: Alex DeBrie

Published: 2018-01-16T00:00:00Z

Content type: tutorial

Language: en

Sources: [Serverless Blog](<https://devfeed.tech/sources/serverless-blog.md>)

Topics: [Cross-origin resource sharing (CORS)](<https://devfeed.tech/topics/cors.md>), [Amazon API Gateway](<https://devfeed.tech/topics/amazon-api-gateway.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>)

Tags: [api-gateway](<https://devfeed.tech/tags/api-gateway.md>), [apis](<https://devfeed.tech/tags/apis.md>), [aws](<https://devfeed.tech/tags/aws.md>), [aws-lambda](<https://devfeed.tech/tags/aws-lambda.md>), [cloud-computing](<https://devfeed.tech/tags/cloud-computing.md>), [cors](<https://devfeed.tech/tags/cors.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [faas](<https://devfeed.tech/tags/faas.md>), [function-as-a-service](<https://devfeed.tech/tags/function-as-a-service.md>), [guide](<https://devfeed.tech/tags/guide.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [infrastructure-as-code](<https://devfeed.tech/tags/infrastructure-as-code.md>), [lambda](<https://devfeed.tech/tags/lambda.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [serverless-architecture](<https://devfeed.tech/tags/serverless-architecture.md>), [serverless-framework](<https://devfeed.tech/tags/serverless-framework.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>)

### AI overview

A guide to the basics of Cross-Origin Resource Sharing (CORS) and avoiding CORS problems with Serverless web APIs on Lambda.

### Source excerpt

Get the basics on Cross-Origin Resource Sharing (CORS) and how to avoid problems with your Serverless web APIs on Lambda.

## Secure and explore ASP.NET Core Web APIs

DevFeed: [Secure and explore ASP.NET Core Web APIs](<https://devfeed.tech/articles/secure-and-explore-asp-net-core-web-apis-20783.md>)

Original publisher: [Read original article](<https://conductofcode.io/post/secure-and-explore-aspnet-core-web-apis/>)

Author: {"twitter"=\>"hlaueriksson"}

Published: 2017-03-31T21:00:00Z

Content type: tutorial

Language: en

Sources: [Henrik Lau Eriksson](<https://devfeed.tech/sources/henrik-lau-eriksson.md>)

Topics: [ASP.NET Core](<https://devfeed.tech/topics/asp-net-core.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [JSON Web Tokens](<https://devfeed.tech/topics/jwt.md>), [Postman](<https://devfeed.tech/topics/postman.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [API](<https://devfeed.tech/topics/api.md>), [JSON](<https://devfeed.tech/topics/json.md>)

Tags: [asp-net-core](<https://devfeed.tech/tags/asp-net-core.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [c-sharp](<https://devfeed.tech/tags/c-sharp.md>), [jwt](<https://devfeed.tech/tags/jwt.md>), [postman](<https://devfeed.tech/tags/postman.md>), [rest](<https://devfeed.tech/tags/rest.md>), [swagger](<https://devfeed.tech/tags/swagger.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>)

### AI overview

A tutorial on creating an ASP.NET Core Web API, securing its controller actions with JSON Web Tokens, and exploring the API through Swagger UI and Postman. It also describes JWT configuration and request-pipeline setup.

### Source excerpt

How to create a ASP.NET Core Web API, secure it with JSON Web Tokens and explore it with Swagger UI and Postman.

## Untangling Deeply-Nested Promise Chains

DevFeed: [Untangling Deeply-Nested Promise Chains](<https://devfeed.tech/articles/untangling-deeply-nested-promise-chains-29531.md>)

Original publisher: [Read original article](<https://philipwalton.com/articles/untangling-deeply-nested-promise-chains/>)

Published: 2016-08-17T14:53:31Z

Content type: article

Language: en

Sources: [Philip Walton](<https://devfeed.tech/sources/philip-walton.md>)

Topics: [Promise](<https://devfeed.tech/topics/promise.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Refactoring](<https://devfeed.tech/topics/refactoring.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [async](<https://devfeed.tech/topics/async.md>), [Caching](<https://devfeed.tech/topics/caching.md>)

Tags: [async](<https://devfeed.tech/tags/async.md>), [best-practices](<https://devfeed.tech/tags/best-practices.md>), [cache](<https://devfeed.tech/tags/cache.md>), [caching](<https://devfeed.tech/tags/caching.md>), [callback](<https://devfeed.tech/tags/callback.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [refactoring](<https://devfeed.tech/tags/refactoring.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>)

### AI overview

The article examines how promise-based Service Worker code can become deeply nested and difficult to understand, despite promises being intended to improve on callback-heavy code. It discusses a network-first strategy with cache fallback for offline support and presents refactoring strategies, software development practices, and async functions to improve readability and maintainability.

### Source excerpt

If you've been writing JavaScript for a while, you've probably heard terms like callback hell or the pyramid of doom. When promises were added to JavaScript a few years ago, I remember reading a lot of blog posts claiming that these problems would be solved; unfortunately, that was a little too optimistic. With more and more web APIs becoming promise-based, we've proven that even promises don't prevent us from writing overly-nested, hard-to-read code.

## MWC 2014, Firefox OS Success, and Yet More Web API Evolution

DevFeed: [MWC 2014, Firefox OS Success, and Yet More Web API Evolution](<https://devfeed.tech/articles/mwc-2014-firefox-os-success-and-yet-more-web-api-evolution-37574.md>)

Original publisher: [Read original article](<https://brendaneich.com/2014/03/mwc-2014-firefox-os-success-and-yet-more-web-api-evolution/>)

Author: Brendan Eich

Published: 2014-03-08T18:58:11Z

Content type: opinion

Language: en

Sources: [Brendan Eich](<https://devfeed.tech/sources/brendan-eich.md>)

Topics: [Firefox](<https://devfeed.tech/topics/firefox.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [Mozilla](<https://devfeed.tech/topics/mozilla.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [web-standards](<https://devfeed.tech/topics/web-standards.md>)

Tags: [cordova](<https://devfeed.tech/tags/cordova.md>), [firefox](<https://devfeed.tech/tags/firefox.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [mozilla](<https://devfeed.tech/tags/mozilla.md>), [uncategorized](<https://devfeed.tech/tags/uncategorized.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>), [web-standards](<https://devfeed.tech/tags/web-standards.md>)

### AI overview

A commentary on Mozilla's Firefox OS activities at Mobile World Congress 2014, including a planned $25 smartphone for emerging-market retail channels, a growing device portfolio, and PhoneGap/Cordova support. It also reviews Web APIs being developed or standardized for smartphones and other devices.

### Source excerpt

Just over a week ago, I left Barcelona and Mobile World Congress 2014, where Mozilla had a huge third year with Firefox OS. We announced the $25 Firefox OS smartphone with Spreadtrum Communications, targeting retail channels in emerging markets, and attracting operator interest to boot. This is an upgrade for those channels at about the ... Continue reading "MWC 2014, Firefox OS Success, and Yet More Web API Evolution"

## Coding for GOOD - SoundCloud API

DevFeed: [Coding for GOOD - SoundCloud API](<https://devfeed.tech/articles/coding-for-good-soundcloud-api-2011.md>)

Original publisher: [Read original article](<https://developers.soundcloud.com/blog//coding-for-good>)

Published: 2012-11-02T00:00:00Z

Content type: article

Language: en

Sources: [SoundCloud Backstage Blog](<https://devfeed.tech/sources/soundcloud-backstage-blog.md>)

Topics: [API](<https://devfeed.tech/topics/api.md>), [Web APIs](<https://devfeed.tech/topics/web-apis.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [coding](<https://devfeed.tech/topics/coding.md>), [App](<https://devfeed.tech/topics/app.md>), [Web](<https://devfeed.tech/topics/web.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [applications](<https://devfeed.tech/tags/applications.md>), [coding](<https://devfeed.tech/tags/coding.md>), [developers](<https://devfeed.tech/tags/developers.md>), [guides](<https://devfeed.tech/tags/guides.md>), [hackathon](<https://devfeed.tech/tags/hackathon.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [web](<https://devfeed.tech/tags/web.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>)

### AI overview

SoundCloud describes its contribution to Coding for GOOD, a coding-lesson series and final project created to help address the technical skills gap. The article highlights a lesson on using the SoundCloud API and JavaScript SDK to build a simple SoundCloud app with web technologies.

### Source excerpt

The web has come a long way. We have APIs that allow developers to create amazing applications quickly, and browser technologies have...