Home System Tutorial LINUX (Live broadcast preview) How many steps does a programmer take to counterattack the CEO? library system

(Live broadcast preview) How many steps does a programmer take to counterattack the CEO? library system

Mar 01, 2024 am 08:46 AM
programmer go language office ceo

[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!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

What libraries are used for floating point number operations in Go? What libraries are used for floating point number operations in Go? Apr 02, 2025 pm 02:06 PM

The library used for floating-point number operation in Go language introduces how to ensure the accuracy is...

What is the problem with Queue thread in Go's crawler Colly? What is the problem with Queue thread in Go's crawler Colly? Apr 02, 2025 pm 02:09 PM

Queue threading problem in Go crawler Colly explores the problem of using the Colly crawler library in Go language, developers often encounter problems with threads and request queues. �...

How to solve the user_id type conversion problem when using Redis Stream to implement message queues in Go language? How to solve the user_id type conversion problem when using Redis Stream to implement message queues in Go language? Apr 02, 2025 pm 04:54 PM

The problem of using RedisStream to implement message queues in Go language is using Go language and Redis...

In Go, why does printing strings with Println and string() functions have different effects? In Go, why does printing strings with Println and string() functions have different effects? Apr 02, 2025 pm 02:03 PM

The difference between string printing in Go language: The difference in the effect of using Println and string() functions is in Go...

What should I do if the custom structure labels in GoLand are not displayed? What should I do if the custom structure labels in GoLand are not displayed? Apr 02, 2025 pm 05:09 PM

What should I do if the custom structure labels in GoLand are not displayed? When using GoLand for Go language development, many developers will encounter custom structure tags...

What is the difference between `var` and `type` keyword definition structure in Go language? What is the difference between `var` and `type` keyword definition structure in Go language? Apr 02, 2025 pm 12:57 PM

Two ways to define structures in Go language: the difference between var and type keywords. When defining structures, Go language often sees two different ways of writing: First...

Which libraries in Go are developed by large companies or provided by well-known open source projects? Which libraries in Go are developed by large companies or provided by well-known open source projects? Apr 02, 2025 pm 04:12 PM

Which libraries in Go are developed by large companies or well-known open source projects? When programming in Go, developers often encounter some common needs, ...

Why is it necessary to pass pointers when using Go and viper libraries? Why is it necessary to pass pointers when using Go and viper libraries? Apr 02, 2025 pm 04:00 PM

Go pointer syntax and addressing problems in the use of viper library When programming in Go language, it is crucial to understand the syntax and usage of pointers, especially in...

See all articles