txtdot/packages/server
dependabot[bot] edcc0f03ef
Build(deps): Bump the deps group across 1 directory with 8 updates
Bumps the deps group with 8 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [eslint](https://github.com/eslint/eslint) | `9.10.0` | `9.11.1` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.5.5` | `22.7.4` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.5.0` | `8.7.0` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.5.0` | `8.7.0` |
| [@fastify/static](https://github.com/fastify/fastify-static) | `7.0.4` | `8.0.1` |
| [@fastify/swagger](https://github.com/fastify/fastify-swagger) | `8.14.0` | `9.1.0` |
| [@fastify/view](https://github.com/fastify/point-of-view) | `9.1.0` | `10.0.1` |
| [fastify](https://github.com/fastify/fastify) | `4.27.0` | `5.0.0` |



Updates `eslint` from 9.10.0 to 9.11.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.10.0...v9.11.1)

Updates `@types/node` from 22.5.5 to 22.7.4
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@typescript-eslint/eslint-plugin` from 8.5.0 to 8.7.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.7.0/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.5.0 to 8.7.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.7.0/packages/parser)

Updates `@fastify/static` from 7.0.4 to 8.0.1
- [Release notes](https://github.com/fastify/fastify-static/releases)
- [Commits](https://github.com/fastify/fastify-static/compare/v7.0.4...v8.0.1)

Updates `@fastify/swagger` from 8.14.0 to 9.1.0
- [Release notes](https://github.com/fastify/fastify-swagger/releases)
- [Commits](https://github.com/fastify/fastify-swagger/compare/v8.14.0...v9.1.0)

Updates `@fastify/view` from 9.1.0 to 10.0.1
- [Release notes](https://github.com/fastify/point-of-view/releases)
- [Commits](https://github.com/fastify/point-of-view/compare/v9.1.0...v10.0.1)

Updates `fastify` from 4.27.0 to 5.0.0
- [Release notes](https://github.com/fastify/fastify/releases)
- [Commits](https://github.com/fastify/fastify/compare/v4.27.0...v5.0.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: deps
- dependency-name: "@fastify/static"
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: deps
- dependency-name: "@fastify/swagger"
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: deps
- dependency-name: "@fastify/view"
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: deps
- dependency-name: fastify
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-30 04:26:54 +00:00
..
config refactor: create monorepo 2024-05-12 16:24:50 +03:00
src style: prettier --fix 2024-09-06 18:34:41 +04:00
static Dev (#207) 2024-07-24 07:45:59 +00:00
templates feat: autofocus on URL and search field 2024-09-06 18:26:22 +04:00
.env.example feat: config option to choose default field: search or URL 2024-09-06 18:08:33 +04:00
.eslintrc.json refactor: create monorepo 2024-05-12 16:24:50 +03:00
.gitattributes refactor: create monorepo 2024-05-12 16:24:50 +03:00
.gitignore refactor: create monorepo 2024-05-12 16:24:50 +03:00
LICENSE refactor: create monorepo 2024-05-12 16:24:50 +03:00
package.json Build(deps): Bump the deps group across 1 directory with 8 updates 2024-09-30 04:26:54 +00:00
pnpm-lock.yaml refactor: create monorepo 2024-05-12 16:24:50 +03:00
README.md refactor: create monorepo 2024-05-12 16:24:50 +03:00
tsconfig.json fix(sdk): jsx content join 2024-05-14 11:05:21 +03:00

txt.
Documentation Instances
MIT license Latest release Matrix chat

HTTP proxy that parses only text, links and pictures from pages reducing internet traffic, removing ads and heavy scripts. Mozilla's Readability library is used under the hood.

Features

  • Server-side page simplification
  • Media proxy
  • Image compression with Sharp
  • Rendering client-side apps (Vanilla, React, Vue, etc) with webder
  • Search with SearXNG
  • Custom parsers for StackOverflow and SearXNG
  • Handy API endpoints
  • No client JavaScript
  • Some kind of Material Design 3
  • Customization with plugins, see @txtdot/sdk and @txtdot/plugins

Running

Development

npm install
npm run dev

Production

npm install
npm run build
npm run start

Docker

docker compose up -d

Screenshots

Main page with URL input field SearXNG search results page

Performance tests

txtdot is a great tool in case of slow internet connection or weak signal. Here is the comparision of performance metrics from pagespeed.web.dev between original page and proxied one.

"Mobile" test includes "Slow 4G" artificial network throttling.

Expand
Original page Proxied through txtdot
Habr Desktop 56% 99%
Habr Mobile 21% 100%
Medium Desktop 44% 100%
Medium Mobile 36% 100%
Nginx Blog Desktop 53% 100%
Nginx Blog Mobile 26% 100%

Credits

txtdot - HTTP proxy that saves bandwidth, removing ads and scripts. | Product Hunt