Code Monkey home page Code Monkey logo

offlinewebsiteviewer's Introduction

Offline Website Viewer

It is a small tool for viewing local websites based on Chromium (using CefSharp). It can view both static html files with CSS and JS in a simple folder and packed files in .zip archive. Also this tool provides search indexing for all .html and .htm files based on <title> tag. Works perfectly with Wget or HTTrack website dumps. So you can grab entire website, pack it into zip and view it using this tool and even search for separate pages.

This tool was created as a replacement for ZIM archives for grabbing wikimedia-based websites. ZIM archive creation pipeline doesn't seem robust to me so i decided to make this tool. It's more transparent to developer than ZIM.

Screenshot 1

Screenshot 2

This tool can also automatically detect .owr archive on a removable drive or CD so you can just burn an archive to a disk and then user can just press that big blue button to open it. Easy to use for dumb end users :)

Sorry for screenshots in russian, it uses default system locale.

Download

Downloads

Supported languages

Currently supported languages:

  • English
  • Russian

You can create your own localizations by creating your own Resources.Language.<your lang code>.resx files. See default Language.resx file for reference (better open it in Visual Studio).

Note there are different locale files for the installer.

Requirements:

Requirements for user:

All requirements for end user are included into installer.

Requirements for development:

How to create a searchable offline web archive

Let's assume that you want to create a redistributable offline copy of a website.

  1. Download the website using Wget or HTTrack.
  2. Open the output directory of the dump. Make sure that index.html is there. If it's not - create it.
  3. Open the Offline Website Viewer click "Open Folder" and select folder of the dump.
  4. Create search index by clicking the command in Main Menu. (this may take a while).
  5. Got to dump directory again. Make sure that there is a new folder called SearchIndex
  6. Pack the whole directory into .zip archive. (index.html must be in the root of the .zip archive)
  7. Rename archive from .zip to .owr

.OWR Archive

There is a file extension .owr (O-ffline W-eb R-esource) associated with this tool. Well, it is renamed .zip actually. It was made to separate the web archive project from zip archives for end user and letting him open the project by double click.

You can easely create an .owr package by creating .zip archive and renaming it into .owr.

Building

The project was built in Visual Studio 2015. Just clone the project and build it in VS 2015. Nore that you will need the requirements mentioned before.

There are 3 projects in the solution:

  • OfflineWebsiteViewer. The application itself. If you will build it it will generate executables and dlls for x86 or x64 platform in /bin folder.
  • Installer. WIX Installer project for the application. It will generate an .msi package for the application. It includes installation to Program Files directory and all shortcut defenitions and file mappings. Note that it doesn't include any UI and requirement packages. It is configured to build only x86 Release version of application but you can change it manually.
  • InstallBootstrapper. This is WIX bootstrapper project. It references installer's .msi package and requirements and builds into ready for user 'installer.exe'.

Search indexing

Search indexing is based on Lucene.Net package. You can create (or delete) a search index using the command in the main menu. Tool looks for all .html and .htm files in project folder then extracts a <title> tag contents. Then it creates a special search index stored in same project folder in folder called SearchIndex. So you can pack the whole project into archive without losing search index. Just create index once and then it is ready to use.

ToDo

  • Build with appveyor
  • More locales
  • Unified project:// scheme

Contribution

Feel free to contribute.

offlinewebsiteviewer's People

Contributors

bshishov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

offlinewebsiteviewer's Issues

How do I download this app for my windows pc?

Hi my name is Kaine Dube and I have been looking for a Offline Browser for my windows 11 pc computer that I have currently and I want to open view interact with offline websites that I download from the internet archive wayback machine so I had came across this page on GitHub which is a rightful app for my windows 11 pc computer but I have a bit of a concern with downloading this app from GitHub and trying to install it on my computer which both of them are asus pc computers that both use windows 11 for some reason when I was trying to download this git source file from your GitHub page it won’t install on my computer so that’s when I needed a little bit of help advise from you on GitHub so just before I can start using your app that you made which is a offline browser for viewing offline websites without internet connection to the wi-fi so yes my name is Kaine Dube and I just needed a little bit of helpful info and advice to how to install offline website viewer Offline Browser for windows 11 pc computer please message me in GitHub under my GitHub account under kainerecycler which is my user account to GitHub if you have any questions or information about your application please that would be great thanks.

Flash Player and not to show broken images For OfflineWebsiteViewer App.

Could you please add in a built in flash player using ruffle flash player api please and fix all the broken images so that the images will appear from within the offline websites and for the built in flash player that will help users to interact with offline websites that contain with flash content.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.