
- 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.
94 lines
3.3 KiB
Markdown
94 lines
3.3 KiB
Markdown
# JSDoc
|
|
|
|
[](http://travis-ci.org/jsdoc/jsdoc)
|
|
|
|
An API documentation generator for JavaScript.
|
|
|
|
Want to contribute to JSDoc? Please read `CONTRIBUTING.md`.
|
|
|
|
Installation and Usage
|
|
----------------------
|
|
|
|
JSDoc supports stable versions of Node.js 12.0.0 and later. You can install
|
|
JSDoc globally or in your project's `node_modules` folder.
|
|
|
|
To install the latest version on npm globally (might require `sudo`;
|
|
[learn how to fix this](https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally)):
|
|
|
|
npm install -g jsdoc
|
|
|
|
To install the latest version on npm locally and save it in your package's
|
|
`package.json` file:
|
|
|
|
npm install --save-dev jsdoc
|
|
|
|
To install the latest development version locally, without updating your
|
|
project's `package.json` file:
|
|
|
|
npm install git+https://github.com/jsdoc/jsdoc.git
|
|
|
|
If you installed JSDoc locally, the JSDoc command-line tool is available in
|
|
`./node_modules/.bin`. To generate documentation for the file
|
|
`yourJavaScriptFile.js`:
|
|
|
|
./node_modules/.bin/jsdoc yourJavaScriptFile.js
|
|
|
|
If you installed JSDoc globally, run the `jsdoc` command:
|
|
|
|
jsdoc yourJavaScriptFile.js
|
|
|
|
By default, the generated documentation is saved in a directory named `out`. You
|
|
can use the `--destination` (`-d`) option to specify another directory.
|
|
|
|
Run `jsdoc --help` for a complete list of command-line options.
|
|
|
|
## Templates and tools
|
|
|
|
The JSDoc community has created templates and other tools to help you generate
|
|
and customize your documentation. Here are a few of them:
|
|
|
|
### Templates
|
|
|
|
+ [jaguarjs-jsdoc](https://github.com/davidshimjs/jaguarjs-jsdoc)
|
|
+ [DocStrap](https://github.com/docstrap/docstrap)
|
|
([example](https://docstrap.github.io/docstrap))
|
|
+ [jsdoc3Template](https://github.com/DBCDK/jsdoc3Template)
|
|
([example](https://github.com/danyg/jsdoc3Template/wiki#wiki-screenshots))
|
|
+ [minami](https://github.com/Nijikokun/minami)
|
|
+ [docdash](https://github.com/clenemt/docdash)
|
|
([example](http://clenemt.github.io/docdash/))
|
|
+ [tui-jsdoc-template](https://github.com/nhnent/tui.jsdoc-template)
|
|
([example](https://nhnent.github.io/tui.jsdoc-template/latest/))
|
|
+ [better-docs](https://github.com/SoftwareBrothers/better-docs)
|
|
([example](https://softwarebrothers.github.io/admin-bro-dev/index.html))
|
|
|
|
### Build tools
|
|
|
|
+ [JSDoc Grunt plugin](https://github.com/krampstudio/grunt-jsdoc)
|
|
+ [JSDoc Gulp plugin](https://github.com/mlucool/gulp-jsdoc3)
|
|
|
|
### Other tools
|
|
|
|
+ [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown)
|
|
+ [Integrating GitBook with
|
|
JSDoc](https://medium.com/@kevinast/integrate-gitbook-jsdoc-974be8df6fb3)
|
|
|
|
## For more information
|
|
|
|
+ Documentation is available at [jsdoc.app](https://jsdoc.app/).
|
|
+ Contribute to the docs at
|
|
[jsdoc/jsdoc.github.io](https://github.com/jsdoc/jsdoc.github.io).
|
|
+ [Join JSDoc's Slack channel](https://jsdoc-slack.appspot.com/).
|
|
+ Ask for help on the
|
|
[JSDoc Users mailing list](http://groups.google.com/group/jsdoc-users).
|
|
+ Post questions tagged `jsdoc` to
|
|
[Stack Overflow](http://stackoverflow.com/questions/tagged/jsdoc).
|
|
|
|
## License
|
|
|
|
JSDoc is copyright (c) 2011-present Michael Mathews <micmath@gmail.com> and the
|
|
[contributors to JSDoc](https://github.com/jsdoc/jsdoc/graphs/contributors).
|
|
|
|
JSDoc is free software, licensed under the Apache License, Version 2.0. See the
|
|
file `LICENSE.md` in this distribution for more details.
|