INTERNET APPS - Communication
Contents
Browsers
Intro to browsers at Wikipedia. List of browsers at Wikipedia.
Mosaic/Netscape
Mozilla/Firefox
Mozilla framework
Firefox is built according the Mozilla framework.
- Firefox - Wikipedia
- Mozilla.org - home of Firefox, using its own Gecko rendering engine (except on IOS where it uses WebKit). Successor of Netscape Navigator
- Mozilla wiki - the official public wiki of the Mozilla Project
- hg.mozilla.org - the Mercurial code repositories of Mozilla (including Mozilla-Central for Firefox and Gecko, Comm-Central for Thunderbird, Seamonkey, ...)
- Mozilla framework overview
- Front end, JS, UI: The Mozilla XPToolkit module provides facilities for building cross-platform UI controls implemented as
XML User Interface Language (XUL) packages. A XUL package consists of a XUL description of the UI widget, Cascading Style Sheets
customizing appearance and JS services implementing the UI behavior
- Content, DOM: specifies a tree structure for storing UI and document content, and provides an API for accessing and manipulating
the content. An application such as the browser may have one or more open documents accessible via DOM APIs.
When an HTML, XML, SVG or other type of document is loaded, the NGLayout engine (also known as Gecko) parses the contents into a DOM tree,
and handles the layout and rendering of the document pages. The NGLayout engine also parses XUL UI controls into a DOM tree and handles rendering of the UI.
- App services: Modules such as the NGLayout engine (Gecko) comprise the application services available to other core modules, and to
XUL packages. Core application modules are implemented as a set of one or more XPCOM (Cross-Platform COM) objects.
Firefox basics
- Firefox docs
- Firefox Lockwise - login and password manager
- stores login and password information encrypted, locally
- encrypted but available to everybody with acess to your computer/user-profile (whatever that exactly means)
- additional protection is possible by using a master-password
- if you create a Firefox account, your login and password information can be automatically synced across your devices
- Firefox troubleshooting guide
Firefox versions
- Firefox docs
- Version 1.0 2004
- Version 2.0 2006
- Version 3.0 2008
- ...
- Version 9 2011
- Version 17 2012
- Version 29 2014
- Version 57 2017
- Version 89 2021
- Version 91.13 running in 202407 on Linux GrayTiger (in full: '91.13.0esr-1~deb11u1')
- Version 118 2023
- Version 122 2024, together with the introduction of an official APT repository for Debian-based Linux distributions
- Version 128 2024 installed on 202407 on Linux GrayTiger
Firefox/Mozilla certificate management
Firefox add-ons
- Addons - extensions (the most popular addons), themes, plugins, ...
Firefox developer guide
- Firefox developer guide
- For access to network information/logs, just type 'about:networking' in the browser bar. Here you can set the logfile and start/stop logging.
- HTTP logging
- Searchfox.org - a source code indexing tool for Mozilla Firefox - many repositories such as mozilla-release (the current version), mozilla-central (nightly release), ...
- Mozilla repositories including Firefox et al.
- Firefox source for 'mozilla-release'
- Firefox source tree documentation
- Firefox developer tools - can store logs in HAR files, readable
via browser or even better via the HAR analyser
- Page Inspector - View and edit page content and layout.
Visualise many aspects of the page including the box model, animations, and grid layouts.
- Web Console - See messages logged by a web page and interact with the page using JavaScript.
- JS Debugger - Stop, step through, examine, and modify the JavaScript running in a page.
- Network Monitor - See the network requests made when a page is loaded.
- Performance Tools - Analyze your site's general responsiveness, JavaScript, and layout performance.
- Responsive Design Mode - See how your website or app will look and behave on different devices and network types.
- Accessability Inspector - Provides a means to access the page's accessibility tree, allowing you to check
what's missing or otherwise needs attention.
- Applicaton Panel - Provides tools for inspecting and debugging modern web apps (also known as Progressive Web Apps).
This includes inspection of service workers and web app manifests.
- Memory - Figure out which objects are keeping memory in use.
- DOM Property Viewer - Inspect the page's DOM properties, functions, etc.
- Eyedropper - Select a color from the page.
- Storage Inspector - Inspect cookies, local storage, indexedDB, and session storage present in a page.
- Style Editor - View and edit CSS styles for the current page.
- Taking screenshots - Take a screenshot of the entire page or of a single element.
- Measure a portion of the page - Measure a specific area of a web page.
- Rulers - Overlay horizontal and vertical rulers on a web page.
- Firefox developer tools tips
- Settings: Enable persistent logs -
A setting to control whether or not the Web Console and Network Monitor clear their output when you navigate to a new page.
If Common Preferences is not included in the Settings, Web Console logs can be persisted by using the 'about:config'
url in the browser address bar, searching for: 'devtools.webconsole.persistlog' then toggling this value to true.
- On Windows, Firefox gets installed in "C:\Program Files (x86)\Mozilla Firefox\firefox.exe".
- JavaScript in Firefox/Mozilla
- Gecko docs - the layout engine developed by the Mozilla Project, its function is to read web content, such as HTML, CSS, XUL, JavaScript, and render it on the user's screen or print it. In XUL-based applications Gecko is used to render the application's user interface as well
- Promise - represents the eventual completion (or failure) of an asynchronous operation, and its resulting value
- Using promises - essentially, a promise is a returned object to which you attach callbacks, instead of passing callbacks into a function
- Axios - Promise based HTTP client for the browser and node.js
Firefox security
- NSS in hg.mozilla.org- Network Security Services by Mozilla
- NSS - Network Security Services by Mozilla - old
- Used e.g. at CERN for Solid integration
- A set of libraries designed to support cross-platform development of security-enabled client and server applications
- Versions: NSS 3.11 2005 - NSS 3.13 planned for 2011
Google Chromium and Chrome
Opera
Microsoft
Other
- Webkit.org - engine of Safari, Mail, App Store, and many other apps on macOS, iOS, and Linux
Service workers
Enable applications to take advantage of persistent background processing, including hooks to enable bootstrapping of web applications while offline.
W3C
SIP
SIP is a signaling protocol for real-time voice, video and messaging, in private IP telephone systems, in instant messaging over Internet Protocol (IP) networks as well as mobile phone calling over LTE (VoLTE). SIP is text-based, incorporating elements of HTTP and SMTP. A SIP call may consist of multiple media streams, but no separate streams are required for applications, such as text messaging, that exchange data as payload in the SIP message.
SIP works in conjunction with several other protocols that specify and carry the session media. Most commonly, media type and parameter negotiation and media setup are performed with the Session Description Protocol (SDP), which is carried as payload in SIP messages.
The protocol was standardized as RFC 2543 in 1999. In November 2000, SIP was accepted as a 3GPP signaling protocol and permanent element of the IP Multimedia Subsystem (IMS) architecture for IP-based streaming multimedia services in cellular networks. In June 2002 the specification was revised in RFC 3261 and various extensions and clarifications have been published since. SIP has been standardized primarily by the IETF, while other protocols, such as H.323, is associated with the ITU.
SIP is a client-server protocol of equipotent peers. Each user agent (UA) performs the function of a user agent client (UAC) when it is requesting a service function, and that of a user agent server (UAS) when responding to a request. Thus, any two SIP endpoints may in principle operate without any intervening SIP infrastructure. HOWEVER, for network operational reasons, for provisioning public services to users, and for directory services, SIP defines several specific types of network server elements.
Basics
Data exchange and communication
Usenet
IRC/Mail/VOIP
Privacy enhancements
Torrents
Intro
Torrent clients
Piratebay
The Pirate Bay (TPB) is an online index of digital content of entertainment media and software. Founded in 2003 by Swedish think tank PiratbyrÄn, it allows visitors to search, download, and contribute magnet links and torrent files, which facilitate peer-to-peer, file sharing among users of the BitTorrent protocol.
Other
TOR - P2P - filesharing
TOR and onions
TOR project (clearnet)
Onions
Clearnet
Darknet
Other
Telegram messenger
Other good stuff