Jsgen is a new-generation open source written in pure JavaScript.CommunityThe website system is mainly used to build a professional community of the SNS type. Slight modifications to the angularjs client can also be made to the multi-user Blog system, forum or CMS Content Management System.
Jsgen write Server Based on nodejsProgramProvides static file responses and restful API services. You can write browser applications based on angularjs to build an interactive webpage UI view and write a data storage system based on MongoDB.
Basic Principle of jsgen: after the client browser initiates an access request, the nodejs server first responds to the Web application compiled by angularjs, which is composed of HTML templates, JS files, and CSS static files. After the client obtains the angularjs application, angularjs communicates with the nodejs Server API interface in the background and exchanges data based on user requests. The data is a pure JSON data packet, angularjs obtains JSON data packets and then compiles them into related pages to present them to users. Therefore, when you enter the Website, you only need to load the view template (HTML, JS, and CSS) for the first time. All subsequent requests are purely JSON data exchanges and do not contain HTMLCode, Greatly reducing data traffic.
Features:
-
The cutting-edge Web technology is an unprecedented website architecture. The front-end and back-end are completely separated.AngularjsGenerate a view.Node. jsProvides restful API data interfaces and static file services. You only need to change the front-end angularjs Application Form to become a forum, multi-user blog, and content management system.
-
User data,ArticleComment data, tag data, paging cache data, user operation interval, and so onLRU CacheTo reduce database I/O operations and ensure that data is updated synchronously.
Frontend and backend ExploitationJSONData packets for data communication. Use of articles and commentsMarkdownFormat editing and storage: supports GFM (GitHub flavored markdown) on GitHub. markdown is parsed into HTML Dom andXSS attacksFiltering is completed by the front-end angularjs application.
-
User Account System, Follow (follow) user/fan, email verification activation, password resetting, sha256 encrypted and secure logon, five failed logon attempts, locking/Email unlocking, user tags, user points, user permission levels, user reading time series, etc. function. The user homepage displays the user's follow tags and relevant articles of the author (that is, articles of interest to the user ).
-
Article/comment System, The use of a unified data structure for articles and comments can be commented, supported, opposed, marked (mark, that is, added to favorites). When the comments meet certain conditions (wonderful comments) it can be automatically promoted to an article (independent, branch-like function), and can be automatically recommended if the article meets certain conditions. Automatically counts articles and comments in real time, automatically generates the latest articles list, the most popular articles list in a week, the most popular Comments List in a week, and the most recently updated articles list. Powerful paging navigation of articles and comments lists to cache browsing records of each user's paging navigation.
-
Tag SystemYou can add tags to articles and users. You can set the maximum number of articles and user tags. Users set their own topics through tags, and articles are classified by tags. Tags are automatically generated and managed when users edit personal information or articles. They can also be managed by the Administrator in the background. Displays hot tags automatically.
-
Document collection systemThe author, editor, and administrator can combine a series of related articles to form an e-book with the chapter outline directory. Tutorial documents, theme collections, and even novel serialization can all be formed by the collection system. (To be completed)
-
Intra-site SMS System, Provides the @ User Function in articles and comments, and important text message sending and email notification functions. (To be completed)
Background Management System, Website parameter settings, cache settings, website operation information, articles, comments, users, tags, collections, and on-site SMS management.
-
Robot Seo SystemBecause angularjs webpage content is dynamically generated on the client, it is naturally immune to the search engine robot. Jsgen dynamically generates a robot-specific HTML page on the server side for Robot access. The search engine robot name can be added in the management background.
Description
Jsgen is a website system developed for the angularjs Chinese community. The test version has been released. GitHub address: https://github.com/zensh/jsgen