Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e3909c96bd | ||
|
|
ac97f1d61d | ||
|
|
61fbc69356 | ||
|
|
67cd659712 | ||
|
|
895a81799f | ||
|
|
097bf7d193 | ||
|
|
40cccfdfa9 | ||
|
|
71fc855940 | ||
|
|
9fc05d97d9 | ||
|
|
0a3dfa8d9a | ||
|
|
43016e389a | ||
|
|
8c4284a435 | ||
|
|
3f13c56fb9 | ||
|
|
73e2be8ac8 | ||
|
|
86f706dee7 | ||
|
|
1372a68ecf | ||
|
|
dc37ab3d7a | ||
|
|
e9de7d89fd | ||
|
|
2e4b165b42 | ||
|
|
d03b340985 | ||
|
|
90d579bbcb | ||
|
|
8067985edd | ||
|
|
2d5ed1bb83 | ||
|
|
85bcc107d4 | ||
|
|
3d4285d2dc | ||
|
|
c7282f8c04 | ||
|
|
e06612f5b3 | ||
|
|
e28655a64c | ||
|
|
1db21526e1 | ||
|
|
d709739dc0 | ||
|
|
d9a1e2fd0c | ||
|
|
ac86e415e9 | ||
|
|
5b89abb646 | ||
|
|
ed49b8b10f | ||
|
|
58d02cf4bc | ||
|
|
0ed884f5ad | ||
|
|
e278ebda5d | ||
|
|
103184c8da | ||
|
|
3159ddb0a6 | ||
|
|
fc7369f586 | ||
|
|
11c78eb85e | ||
|
|
5449728cc6 | ||
|
|
7d8e58fb4d | ||
|
|
1d46fd0279 | ||
|
|
cc99b267bb | ||
|
|
cf38f55291 | ||
|
|
1483740189 | ||
|
|
f5e91a6366 | ||
|
|
0e539c0a98 | ||
|
|
d1265c21ee | ||
|
|
9a855a7288 | ||
|
|
d331367223 | ||
|
|
156f1f50bc | ||
|
|
3acd66e5b3 | ||
|
|
876a7c1b1f | ||
|
|
444d7c006d | ||
|
|
10353c9a1d | ||
|
|
22e2be2dc8 | ||
|
|
d3e2436527 | ||
|
|
984f255d8a | ||
|
|
3f508da8e6 | ||
|
|
295ffd640b | ||
|
|
b344f9d7e4 | ||
|
|
ca49c83073 | ||
|
|
d28d74a77a | ||
|
|
1b52fde005 | ||
|
|
31d5320922 | ||
|
|
e871dad863 | ||
|
|
eee2db628a | ||
|
|
4c759913c7 | ||
|
|
4442cbae9d | ||
|
|
6d0d75ab1d | ||
|
|
3f2746cdb7 | ||
|
|
d28c696190 | ||
|
|
eba7510be8 | ||
|
|
d1442bfc93 | ||
|
|
743d941204 | ||
|
|
f82bd966e0 | ||
|
|
aedc9854c1 | ||
|
|
87c5b5bc6b | ||
|
|
9f50eff10a | ||
|
|
3b56e7ca2f | ||
|
|
f64c8082ff | ||
|
|
20be763dc1 | ||
|
|
391a956af8 | ||
|
|
2121a6a4f2 | ||
|
|
dc8f82961a | ||
|
|
d9015804c8 | ||
|
|
135bec17a8 | ||
|
|
35624786ab | ||
|
|
0688a360c7 |
@@ -1,138 +0,0 @@
|
|||||||
# ---> Node
|
|
||||||
# Logs
|
|
||||||
logs
|
|
||||||
*.log
|
|
||||||
npm-debug.log*
|
|
||||||
yarn-debug.log*
|
|
||||||
yarn-error.log*
|
|
||||||
lerna-debug.log*
|
|
||||||
.pnpm-debug.log*
|
|
||||||
|
|
||||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
|
||||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
|
||||||
|
|
||||||
# Runtime data
|
|
||||||
pids
|
|
||||||
*.pid
|
|
||||||
*.seed
|
|
||||||
*.pid.lock
|
|
||||||
|
|
||||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
|
||||||
lib-cov
|
|
||||||
|
|
||||||
# Coverage directory used by tools like istanbul
|
|
||||||
coverage
|
|
||||||
*.lcov
|
|
||||||
|
|
||||||
# nyc test coverage
|
|
||||||
.nyc_output
|
|
||||||
|
|
||||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
|
||||||
.grunt
|
|
||||||
|
|
||||||
# Bower dependency directory (https://bower.io/)
|
|
||||||
bower_components
|
|
||||||
|
|
||||||
# node-waf configuration
|
|
||||||
.lock-wscript
|
|
||||||
|
|
||||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
|
||||||
build/Release
|
|
||||||
|
|
||||||
# Dependency directories
|
|
||||||
node_modules/
|
|
||||||
jspm_packages/
|
|
||||||
|
|
||||||
# Snowpack dependency directory (https://snowpack.dev/)
|
|
||||||
web_modules/
|
|
||||||
|
|
||||||
# TypeScript cache
|
|
||||||
*.tsbuildinfo
|
|
||||||
|
|
||||||
# Optional npm cache directory
|
|
||||||
.npm
|
|
||||||
|
|
||||||
# Optional eslint cache
|
|
||||||
.eslintcache
|
|
||||||
|
|
||||||
# Optional stylelint cache
|
|
||||||
.stylelintcache
|
|
||||||
|
|
||||||
# Microbundle cache
|
|
||||||
.rpt2_cache/
|
|
||||||
.rts2_cache_cjs/
|
|
||||||
.rts2_cache_es/
|
|
||||||
.rts2_cache_umd/
|
|
||||||
|
|
||||||
# Optional REPL history
|
|
||||||
.node_repl_history
|
|
||||||
|
|
||||||
# Output of 'npm pack'
|
|
||||||
*.tgz
|
|
||||||
|
|
||||||
# Yarn Integrity file
|
|
||||||
.yarn-integrity
|
|
||||||
|
|
||||||
# dotenv environment variable files
|
|
||||||
.env
|
|
||||||
.env.development.local
|
|
||||||
.env.test.local
|
|
||||||
.env.production.local
|
|
||||||
.env.local
|
|
||||||
|
|
||||||
# parcel-bundler cache (https://parceljs.org/)
|
|
||||||
.cache
|
|
||||||
.parcel-cache
|
|
||||||
|
|
||||||
# Next.js build output
|
|
||||||
.next
|
|
||||||
out
|
|
||||||
|
|
||||||
# Nuxt.js build / generate output
|
|
||||||
.nuxt
|
|
||||||
dist
|
|
||||||
|
|
||||||
# Gatsby files
|
|
||||||
.cache/
|
|
||||||
# Comment in the public line in if your project uses Gatsby and not Next.js
|
|
||||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
|
||||||
# public
|
|
||||||
|
|
||||||
# vuepress build output
|
|
||||||
.vuepress/dist
|
|
||||||
|
|
||||||
# vuepress v2.x temp and cache directory
|
|
||||||
.temp
|
|
||||||
.cache
|
|
||||||
|
|
||||||
# vitepress build output
|
|
||||||
**/.vitepress/dist
|
|
||||||
|
|
||||||
# vitepress cache directory
|
|
||||||
**/.vitepress/cache
|
|
||||||
|
|
||||||
# Docusaurus cache and generated files
|
|
||||||
.docusaurus
|
|
||||||
|
|
||||||
# Serverless directories
|
|
||||||
.serverless/
|
|
||||||
|
|
||||||
# FuseBox cache
|
|
||||||
.fusebox/
|
|
||||||
|
|
||||||
# DynamoDB Local files
|
|
||||||
.dynamodb/
|
|
||||||
|
|
||||||
# TernJS port file
|
|
||||||
.tern-port
|
|
||||||
|
|
||||||
# Stores VSCode versions used for testing VSCode extensions
|
|
||||||
.vscode-test
|
|
||||||
|
|
||||||
# yarn v2
|
|
||||||
.yarn/cache
|
|
||||||
.yarn/unplugged
|
|
||||||
.yarn/build-state.yml
|
|
||||||
.yarn/install-state.gz
|
|
||||||
.pnp.*
|
|
||||||
|
|
||||||
@@ -1,2 +1,40 @@
|
|||||||
# im_webapp
|
# Single-page chat with Tinode
|
||||||
|
|
||||||
|
Example using [Tinode](https://github.com/tinode/chat/) to build a single-page chat application. The app uses
|
||||||
|
[React](https://facebook.github.io/react/), Google's material design [fonts](https://www.google.com/fonts/)
|
||||||
|
and [icons](https://google.github.io/material-design-icons/#icon-font-for-the-web). The [Tinode javascript library](https://github.com/tinode/tinode-js/) has no external dependencies.
|
||||||
|
|
||||||
|
This is work in progress. Bugs are expected. The app was tested in the latest Chrome & Firefox only.
|
||||||
|
|
||||||
|
Try it (possibly older version) live at http://api.tinode.co/x/example-react-js/. Login as one of `alice`, `bob`, `carol`, `dave`, `frank`. Password is `<login>123`, e.g. password for `alice` is `alice123`.
|
||||||
|
|
||||||
|
License: [Apache 2.0](http://www.apache.org/licenses/LICENSE-2.0)
|
||||||
|
|
||||||
|
Photos from https://www.pexels.com/ under [CC0 license](https://www.pexels.com/photo-license/).
|
||||||
|
|
||||||
|
Background pattern from http://subtlepatterns.com/, commercial and non-commercial use allowed with attribution.
|
||||||
|
|
||||||
|
## Missing functionality
|
||||||
|
|
||||||
|
* Cannot manage group members.
|
||||||
|
* Editing chat parameters is incomplete and buggy.
|
||||||
|
* Cannot send images or other media.
|
||||||
|
* No typing indicators.
|
||||||
|
* No indicators of chat status (muted, blocked, etc.).
|
||||||
|
* Long polling as a wire transport does not work.
|
||||||
|
* Browser push notifications are missing.
|
||||||
|
* No encryption.
|
||||||
|
|
||||||
|
## Responsive design
|
||||||
|
|
||||||
|
### Desktop
|
||||||
|
|
||||||
|
<p align="center">
|
||||||
|
<img src="web-desktop.png" alt="Desktop web: full app" width=866 />
|
||||||
|
</p>
|
||||||
|
|
||||||
|
### Mobile
|
||||||
|
|
||||||
|
<p align="center">
|
||||||
|
<img src="web-mob-contacts.png" alt="Mobile web: contacts" width=323 /> <img src="web-mob-chat.png" alt="Mobile web: chat" width=323 /> <img src="web-mob-topicinfo.png" alt="Mobile web: topic info" width=323 />
|
||||||
|
</p>
|
||||||
|
|||||||
|
After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 119 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 541 KiB |
|
After Width: | Height: | Size: 227 KiB |
|
After Width: | Height: | Size: 176 KiB |
|
After Width: | Height: | Size: 68 KiB |