Sen descrición

wuyi 9bfe8abedb 添加 API URL 配置文件,统一管理项目中的 API 地址,并更新相关服务以使用新的 API 端点 hai 3 meses
.docker 04f78a30e0 init hai 4 meses
.github 04f78a30e0 init hai 4 meses
.zed 04f78a30e0 init hai 4 meses
handlebarsHelpers 04f78a30e0 init hai 4 meses
public cf5731c7eb deploy hai 3 meses
rlottie_with_printf 04f78a30e0 init hai 4 meses
snapshot-server 04f78a30e0 init hai 4 meses
src 9bfe8abedb 添加 API URL 配置文件,统一管理项目中的 API 地址,并更新相关服务以使用新的 API 端点 hai 3 meses
.editorconfig 04f78a30e0 init hai 4 meses
.env cf5731c7eb deploy hai 3 meses
.env.local.example 04f78a30e0 init hai 4 meses
.gitignore 04f78a30e0 init hai 4 meses
.gitmodules 04f78a30e0 init hai 4 meses
CHANGELOG.md 04f78a30e0 init hai 4 meses
CHANGELOG_ru.md 04f78a30e0 init hai 4 meses
LICENSE 04f78a30e0 init hai 4 meses
README.md 04f78a30e0 init hai 4 meses
SECURITY.md 04f78a30e0 init hai 4 meses
babel.config.js 04f78a30e0 init hai 4 meses
build.js 04f78a30e0 init hai 4 meses
deploy.sh 8a051dc16d deploy hai 3 meses
docker-compose.yaml 04f78a30e0 init hai 4 meses
eslint.config.mjs 04f78a30e0 init hai 4 meses
fff.code-workspace 04f78a30e0 init hai 4 meses
git-serve-server.js 04f78a30e0 init hai 4 meses
git-serve.js 04f78a30e0 init hai 4 meses
index.html 04f78a30e0 init hai 4 meses
keepAsset.js 04f78a30e0 init hai 4 meses
package.json bb4cdf0bf7 更新依赖项版本,简化自动登录服务,添加自动登录页面 hai 4 meses
pnpm-lock.yaml bb4cdf0bf7 更新依赖项版本,简化自动登录服务,添加自动登录页面 hai 4 meses
schema.js 04f78a30e0 init hai 4 meses
server.js 04f78a30e0 init hai 4 meses
ssh.example.json 04f78a30e0 init hai 4 meses
sw.ts 04f78a30e0 init hai 4 meses
tsconfig.json 04f78a30e0 init hai 4 meses
vite.config.ts 04f78a30e0 init hai 4 meses
vite.proxy.js 04f78a30e0 init hai 4 meses
watch-lang.js 04f78a30e0 init hai 4 meses

README.md

Telegram Web K

Based on Webogram, patched and improved. Available for everyone here: https://web.telegram.org/k/

Developing

Install dependencies with:

pnpm install

This will install all the needed dependencies.

Running web-server

Just run pnpm start to start the web server and the livereload task. Open http://localhost:8080/ in your browser.

Running in production

Run node build to build the minimized production version of the app. Copy public folder contents to your web server.

Running in docker

Developing:

  • Install dependencies docker-compose up tweb.dependencies.
  • Run develop container docker-compose up tweb.develop.
  • Open http://localhost:8080/ in your browser.

Production:

  • Run docker-compose up tweb.production -d nginx image and container to serve the build
  • Open http://localhost:80/ in your browser.

I also created an image https://hub.docker.com/r/elgammalx/tweb/tags based on Nginx ready to be deployed.

You can use docker build -f ./.docker/Dockerfile_production -t {dockerhub-username}/{imageName}:{latest} . to build your production ready image.

My build use in docker-compose.yaml file

services:
  tweb.production:
    image: elgammalx/tweb
    ports:
      - 80:80

Dependencies

Debugging

You are welcome in helping to minimize the impact of bugs. There are classes, binded to global context. Look through the code for certain one and just get it by its name in developer tools. Source maps are included in production build for your convenience.

Additional query parameters

  • test=1: to use test DCs
  • debug=1: to enable additional logging
  • noSharedWorker=1: to disable Shared Worker, can be useful for debugging
  • http=1: to force the use of HTTPS transport when connecting to Telegram servers

Should be applied like that: http://localhost:8080/?test=1

Taking local storage snapshots

You can also take and load snapshots of the local storage and indexed DB using the ./snapshot-server mini-app. Check the README.md under this folder for more details.

Preview all icons

You can see all the available svg icons by calling the showIconLibrary() global function in the browser's console.

Troubleshooting & Suggesting

If you find an issue with this app or wish something to be added, let Telegram know using the Suggestions Platform.

Licensing

The source code is licensed under GPL v3. License is available here.