Jianshu

screenshot of Jianshu
angular
express
nestjs

仿简书nx+nodejs+nestjs6+express+mongodb+angular8+爬虫

Overview

The Jianshu application demonstrates the usage of Angular for frontend development and NestJS for backend development, incorporating functionalities like JWT authentication, MongoDB integration, Redis usage, and more. The application is designed based on the Jianshu template with a focus on user, group, and permission management.

Features

  • MongoDB and Mongoose Integration: Use Mongoose (Typegoose) to connect with MongoDB for data modeling.
  • Redis Connectivity: Utilize Ioredis to establish a connection with Redis for caching and message broker functionalities.
  • JWT Authentication: Implement JSON Web Tokens for secure authentication, with support for Github login.
  • Full-Featured Controllers and Services: Easily install and start using feature-rich controllers and services.
  • Extensible CRUD Controllers: Framework agnostic controllers supporting CRUD operations, query parsing, relations, caching, and more.
  • Query Builder and Validation: Include query parsing, filtering, pagination, sorting, and DTO validation features.
  • Domain-Driven Design Support: Implement Domain-Driven Design principles with provided features.

Summary

The Jianshu application showcases the integration of Angular and NestJS, along with various essential technologies like MongoDB, Redis, JWT authentication, and more. By following the provided installation steps, users can quickly set up and run the project locally to explore its features like versatile controllers, query builders, authentication mechanisms, and support for Domain-Driven Design.

angular
Angular

Angular is a TypeScript-based open-source framework by Google for building dynamic single-page applications and cross-platform mobile apps with MVC architecture and a rich set of features.

express
Express

Express.js is a simple Node.js framework for single, multi-page, and hybrid web applications.

nestjs
Nest

A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

Stylelint

Stylelint is a modern linter for CSS that helps you avoid errors and enforce consistent styling conventions. It provides rules for detecting errors and warnings, and can be configured to match your specific project's requirements.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.