[Live broadcast preview] How many steps can a programmer take to counterattack the CEO?
DocHub library system is a library solution developed and implemented using the Beego framework of Go language. It is open sourced using the business-friendly Apache2.0 open source contract and supports office documents, PDF documents, TXT, EPUB, MOBI and other document formats. for online reading and browsing.
Upgrade Log
1.OSS storage code encapsulation optimization
2. Redesign the login page, the previous login page was really ugly
3. Optimization of default images such as user avatars and document covers
When loading images, use onerrorlinux qq directly on the backend. It no longer queries the front-end whether the image exists in OSS and returns the default image when it does not exist, which is convenient to save OSS request resources. Therefore, now the deployment program does not need to Upload the default image to OSS, and then configure the address of the default image in the configuration file
4. Configuration file optimization
All related configuration items are placed in the app.conf file for the convenience of configuration.
Detailed configuration instructions are added to each item in the configuration file. The app.conf file is placed in the conf directory. The file app.conf.example is Open Source Library System. Just remove the .example extension
5. Support for online browsing of documents in mobi, epub, chm, txt and other formats
Currently, the document formats supported by DocHub library for online reading are as follows:
Word document: doc, docx, rtf, wps, odt
Excel documents: ppt, pptx, pps, ppsx, dpslinux tutorial, odp, pot
PPT document: xls, xlsxOpen source library system, et, ods
PDF document: pdf
Other documents: txt, epub, mobi, chm
Umd format documents do not currently support online reading. Online reading of chm format documents is not very effective, and the order of document content will be disordered.
I believe that the DocHub library system supports more document formats than some paid library systems on the Internet.
I have received suggestions from netizens, suggesting that onlyoffice, Collabora, flashpaper, pdf.js, etc. be used to realize online document reading.
Brainstorming, thank you very much for your active opinions and suggestions.
After that, I also tried and tested it seriously. Take onlyoffice as an example. I played around with it under docker (my dockerhub:). Every time I converted the document, it took too much server resources. However, users can directly get the downloaded document. I believe this is something many webmasters don’t want to do. seen.
But users need to load the entire document to read it, which also consumes bandwidth resources. Sina iAsk shares information using pictures as a solution for online document reading. I believe they also have this consideration in mind, so we follow the lead.
6. Solve the problem of emails not being sent
Unified use of SMTP to send text messages and support for sending TLS/SSL emails. Used library
Some netizens reported in the group that the email could not be sent... because no one helped me test it. Now I develop my own test. Basically, if I pass the test and there is no problem, I will default to this function and there will be no problem. There are many scenarios. Maybe I haven't considered it, so I still can't detect some problems myself, and I don't treat you as guinea pigs...
7. Document reading page performance optimization
For the previous document reading page, the more pages the document is turned, the page will become more and more stuck until it gets stuck (a huge bug)...
This is caused by the back-end js repeatedly estimating the svg of the document. For example, when I turn to page 100, every time I scroll the keyboard, it triggers more than 3,000 estimates of the svg image position, which is convenient for determining the user's current reading. Which page is reached, and which page’s lazy loading is triggered...
8. Document preview page limit
You can limit the maximum number of document preview pages in the management background->System Settings->.
The purpose of this is that if a 300-page document only provides 100 pages for users to read, it can reduce the resource expenditure of converting the 200-page document to SVG after the PDF on the server front-end.
Not providing full documents of large documents for users to read, this can not only save server resources, but also encourage users to use points to download documents... This is how Sina iAsk shares information...
Installation and Deployment Tutorial
Currently, I have only written the installation and deployment tutorial for docker. The deployment tutorial address is:
DocHub library system is not perfect at present. China Unicom WAP site and Momo applet have not yet been developed. However, I am working hard!
Demo site
address:
Management background:
The administrator account password is admin
The login verification code is: Open Sesame
Source code hosting
GitHub:
Gitee:
The above is the detailed content of (Live broadcast preview) How many steps does a programmer take to counterattack the CEO? library system. For more information, please follow other related articles on the PHP Chinese website!