
- Complete NestJS TypeScript implementation with WebSocket support - Direct messaging (DM) and group chat functionality - End-to-end encryption with AES encryption and key pairs - Media file support (images, videos, audio, documents) up to 100MB - Push notifications with Firebase Cloud Messaging integration - Mention alerts and real-time typing indicators - User authentication with JWT and Passport - SQLite database with TypeORM entities and relationships - Comprehensive API documentation with Swagger/OpenAPI - File upload handling with secure access control - Online/offline status tracking and presence management - Message editing, deletion, and reply functionality - Notification management with automatic cleanup - Health check endpoint for monitoring - CORS configuration for cross-origin requests - Environment-based configuration management - Structured for Flutter SDK integration Features implemented: ✅ Real-time messaging with Socket.IO ✅ User registration and authentication ✅ Direct messages and group chats ✅ Media file uploads and management ✅ End-to-end encryption ✅ Push notifications ✅ Mention alerts ✅ Typing indicators ✅ Message read receipts ✅ Online status tracking ✅ File access control ✅ Comprehensive API documentation Ready for Flutter SDK development and production deployment.
68 lines
2.8 KiB
Markdown
68 lines
2.8 KiB
Markdown
# Browserslist [![Cult Of Martians][cult-img]][cult]
|
||
|
||
<img width="120" height="120" alt="Browserslist logo by Anton Popov"
|
||
src="https://browsersl.ist/logo.svg" align="right">
|
||
|
||
The config to share target browsers and Node.js versions between different
|
||
front-end tools. It is used in:
|
||
|
||
* [Autoprefixer]
|
||
* [Babel]
|
||
* [postcss-preset-env]
|
||
* [eslint-plugin-compat]
|
||
* [stylelint-no-unsupported-browser-features]
|
||
* [postcss-normalize]
|
||
* [obsolete-webpack-plugin]
|
||
|
||
All tools will find target browsers automatically,
|
||
when you add the following to `package.json`:
|
||
|
||
```json
|
||
"browserslist": [
|
||
"defaults and fully supports es6-module",
|
||
"maintained node versions"
|
||
]
|
||
```
|
||
|
||
Or in `.browserslistrc` config:
|
||
|
||
```yaml
|
||
# Browsers that we support
|
||
|
||
defaults and fully supports es6-module
|
||
maintained node versions
|
||
```
|
||
|
||
Developers set their version lists using queries like `last 2 versions`
|
||
to be free from updating versions manually.
|
||
Browserslist will use [`caniuse-lite`] with [Can I Use] data for this queries.
|
||
|
||
You can check how config works at our playground: [`browsersl.ist`](https://browsersl.ist/)
|
||
|
||
<a href="https://browsersl.ist/">
|
||
<img src="/img/screenshot.webp" alt="browsersl.ist website">
|
||
</a>
|
||
|
||
<br>
|
||
<br>
|
||
<div align="center">
|
||
<a href="https://evilmartians.com/?utm_source=browserslist"><img src="https://evilmartians.com/badges/sponsored-by-evil-martians.svg" alt="Sponsored by Evil Martians" width="236" height="54"></a> <a href="https://cube.dev/?ref=eco-browserslist-github"><img src="https://user-images.githubusercontent.com/986756/154330861-d79ab8ec-aacb-4af8-9e17-1b28f1eccb01.svg" alt="Supported by Cube" width="227" height="46"></a>
|
||
</div>
|
||
|
||
[stylelint-no-unsupported-browser-features]: https://github.com/ismay/stylelint-no-unsupported-browser-features
|
||
[obsolete-webpack-plugin]: https://github.com/ElemeFE/obsolete-webpack-plugin
|
||
[eslint-plugin-compat]: https://github.com/amilajack/eslint-plugin-compat
|
||
[Browserslist Example]: https://github.com/browserslist/browserslist-example
|
||
[postcss-preset-env]: https://github.com/csstools/postcss-plugins/tree/main/plugin-packs/postcss-preset-env
|
||
[postcss-normalize]: https://github.com/csstools/postcss-normalize
|
||
[`browsersl.ist`]: https://browsersl.ist/
|
||
[`caniuse-lite`]: https://github.com/ben-eb/caniuse-lite
|
||
[Autoprefixer]: https://github.com/postcss/autoprefixer
|
||
[Can I Use]: https://caniuse.com/
|
||
[Babel]: https://github.com/babel/babel/tree/master/packages/babel-preset-env
|
||
[cult-img]: https://cultofmartians.com/assets/badges/badge.svg
|
||
[cult]: https://cultofmartians.com/done.html
|
||
|
||
## Docs
|
||
Read full docs **[here](https://github.com/browserslist/browserslist#readme)**.
|