gitmyhub

kkFileView

Java ★ 14k updated 10d ago

Universal File Online Preview Project based on Spring-Boot

A self-hosted web service that previews over 100 file types, Word, Excel, PDF, images, video, CAD, 3D models, and more, directly in a browser, via a REST API your own app can call.

JavaSpring BootLibreOfficeOpenOfficeRedissetup: hardcomplexity 4/5

kkFileView is an open-source tool that lets you preview many kinds of files directly in a web browser, without needing to download them or have the matching program installed. The idea is that another website or application can hand a file to kkFileView, and it renders a viewable version on a web page. It is built with Spring Boot, a common framework for building web services in the Java programming language, which the project says makes it straightforward to set up and run.

The standout point of the README is the sheer range of file types it can show. This includes everyday office documents like Word, Excel, and PowerPoint, plus their WPS, OpenOffice, and LibreOffice equivalents, along with PDF, plain text, and code files. It goes well beyond that to cover images of many formats, audio and video files, compressed archives such as zip and rar, email files, e-books, flowcharts, 3D models, CAD drawings, and medical imaging files. The project offers a REST API, which is a standard way for other software to call it, and it is structured so developers can add support for more formats.

The README points to an official website, documentation, and a live public demo, and asks people to be considerate with the shared demo service. The contact section politely asks users to search for answers themselves before opening questions.

To run it, the README describes pulling the source code and starting the main Java program, after which the preview service is available at a local web address. It relies on OpenOffice or LibreOffice in the background to convert documents, with Redis as an optional extra.

A large portion of the document is a detailed change history. The most recent entry, version 5.0.0, lists many improvements, new features, and bug fixes, and notes that it now requires Java version 21 or higher and changes some default preview settings.

Where it fits