Based on Webogram, patched and improved. Available for everyone here: https://web.telegram.org/k/
Install dependencies with:
pnpm install
This will install all the needed dependencies.
Just run pnpm start
to start the web server and the livereload task.
Open http://localhost:8080/ in your browser.
Run node build
to build the minimized production version of the app. Copy public
folder contents to your web server.
- Install dependencies
docker-compose up tweb.dependencies
. - Run develop container
docker-compose up tweb.develop
. - Open http://localhost:8080/ in your browser.
- 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
- BigInteger.js (Unlicense)
- pako (MIT License)
- cryptography (Apache License 2.0)
- emoji-data (MIT License)
- twemoji-parser (MIT License)
- rlottie (MIT License)
- fast-png (MIT License)
- opus-recorder (BSD License)
- Prism (MIT License)
- Solid (MIT License)
- TinyLD (MIT License)
- libwebp.js
- fastBlur
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.
- 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
If you find an issue with this app or wish something to be added, let Telegram know using the Suggestions Platform.
The source code is licensed under GPL v3. License is available here.