TNTWeb – The full name of Tencent news front end team, partners in the group have practiced and accumulated experience in Web front end, NodeJS development, UI design, mobile APP and other large front end fields.

At present, the team mainly supports the front-end development of Tencent news business. Besides business development, some front-end infrastructure has been accumulated to enable business efficiency improvement and product innovation.

The team advocates open source construction, has a variety of technical masters, the team Github address: github.com/tnfe

Today I would like to introduce shida, project address: Shida

introduce

Visual scaffolding sounds mysterious and powerful. But it can be very simple.

With the continuous growth of short video flow on the Internet and the change of consumption and living habits, the convenient and vivid display of video content has successfully won the trust of users, and the dependence of users on short video has also risen sharply. The penetration of video visualization platform is becoming stronger and stronger.

Video visualization tool is a common operation tool that allows users to quickly edit and generate videos, improving efficiency. But designing and developing such tools from scratch isn’t easy.

Today, we will introduce “Visual building”, which provides the core functions of video visual building, eliminating the difficulty of realizing video visual building tools from zero.

Vision Building is a video visual construction project. You can quickly produce a short video by simple drag-and-drop, as easy as using H5 building tools such as Yiqixiu or Baidu H5. At present, there are few open source projects about video visualization construction in the industry. “Vision Building” is a relatively complete open source project, and I only hope you like it.

“Depending on the take” backend video synthesis is partly based on FFCreatorgithub.com/tnfe/FFCrea… FFCreator is a lightweight and flexible short video processing library based on Node.js. All you need to do is add a few pictures or video clips and a piece of background music to quickly create a cool video clip.

The front part of “Vision Partnership” was developed by quark-H5 project, which did not make much expansion. Quark-h5 is a great open source tool for BUILDING H5, with reasonable architecture and relatively clear and easy to read code. Thanks to the author.

Project Preview:

Project directory

| - client -- -- -- -- -- -- -- -- the front-end interface code project | - common -- -- -- -- -- -- -- -- the front-end interface corresponding static resources | - components -- -- -- -- -- -- -- -- component | - config -- -- -- -- -- -- -- - | - eventBus configuration file -- -- -- -- -- -- -- -- eventBus | - filter filter -- -- -- -- -- -- -- - | -- mixins -- -- -- -- -- -- -- - | - pages with -- -- -- -- -- -- -- -- page | - the router -- -- -- -- -- -- -- - | - store routing configuration -- -- -- -- -- -- -- -- vuex state management | - service -- -- -- -- -- -- -- -- axios package | -- App. Vue -- -- -- -- -- -- -- -- the App | -- main. Js -- -- -- -- -- -- -- -- the entry file | -- permission. Js -- -- -- -- -- -- -- -- access control | - server -- -- -- -- -- -- -- -- the server program code | - confog -- -- -- -- -- -- -- - | - controller configuration file -- -- -- -- -- -- -- -- the database link | - the extend -- -- -- -- -- -- -- - | - model framework extension -- -- -- -- -- -- -- Schema and Model | - middleware -- -- -- -- -- -- -- - | - the core middleware -- -- -- -- -- -- -- -- Koa MVC automatic loading core file | - views -- -- -- -- -- -- -- - | - public ejs page template Static resource -- -- -- -- -- -- -- - | -- the router. Js routing | -- -- -- -- -- -- -- -- -- app. Js -- -- -- -- -- -- -- -- the service side entrance | - common -- -- -- -- -- -- -- - front and back side public code modules (such as encryption) | - engine - the template -- -- -- -- -- -- -- -- page template engine, use webpack packaged into js provides reference page | -- config. Json -- -- -- -- -- -- -- -- the configuration fileCopy the code

Editor overall design

  • A component selection area that allows users to select desired components
  • An edit preview palette that allows users to drag and drop page previews
  • A component property editor that gives users the ability to edit components internal props, common styles, and animations
  • The user selects components to add to the page in the left component area, and the editing area renders each element component through the dynamic component feature.

Video compositing core

Development and debugging

Start the mongo

  • Install mongodb:zhuanlan.zhihu.com/p/394960855
  • Configure mongodb: The configuration file is in/server/config/index.js
  • Start the mongodb:www.cnblogs.com/zhm1985/p/1…

Install dependencies

npm i
Copy the code

Start the front end and turn on watch mode

Hot update is enabled in this mode

npm run watch-publish
Copy the code

Starting the server

npm run dev-server
Copy the code
Start accesshttp://localhost:4000You can see the project page

First register the user, then log in to experience the operation

Release deployment

Start the mongo

  • Install mongodb:zhuanlan.zhihu.com/p/394960855
  • Configure mongodb: The configuration file is in/server/config/index.js
  • Start the mongodb:www.cnblogs.com/zhm1985/p/1…

Pm2 needs to be installed globally

npm install pm2 -g
Copy the code

Start the command

npm run publish && npm run start
Copy the code

The year of 2021 has passed. Many things have happened in the front end of this year, and we can even find some new things. I hope we can stand in the present and see the future.

Here I quote a sentence — keep on going. In the future, we will continue to work deeply in the front-end field. We also believe that we will reap the due value if we continue to do so.

team

TNTWeb – Tencent news front end team, TNTWeb is committed to the exploration of cutting-edge technology in the industry and the improvement of team members’ personal ability. For front-end developers to organize the applets and the latest quality content in the field of web front-end technology, weekly update ✨, welcome star, github address: github.com/tnfe/TNT-We…