O WebIDX é um mecanismo de pesquisa do lado do cliente para sites estáticos.
Ele funciona usando um script PERL simples (webidx.pl) para gerar um banco de dados SQLite contendo um índice de arquivos HTML estáticos. O banco de dados SQLite é então publicado ao lado do conteúdo estático.
A funcionalidade de pesquisa é implementada no webidx.js, que usa o SQL.js para fornecer uma interface ao arquivo sqlite.
You can see a live demo of it here.
$ /path/to/webidx.pl -x index.html -x archives.html --xP secret_files -o https://example.com -z . ./index.db
You can run webidx.pl --help to see all the available command-line options.
< script src =" https://cdnjs.cloudflare.com/ajax/libs/sql.js/1.10.1/sql-wasm.js " > </ script >
< script src =" https://cdnjs.cloudflare.com/ajax/libs/pako/2.1.0/pako.min.js " > </ script >
< script src =" /path/to/webidx.js " > </ script > < form onsubmit =" window.webidx.search({dbfile:'/webidx.db.gz',query:document.getElementById('q').value});return false; " >
< input id =" q " type =" search " >
</ form >Quando o usuário atingir a tecla de retorno na caixa de pesquisa, uma caixa de diálogo modal será exibida contendo resultados de pesquisa!
The object that's passed to window.webidx.search() can have the following properties:
dbfile : URL of the SQLite database filequery : search queryresultCallback : a callback which is passed an array of search results. Each result is an object with the title and url properties. Se não for definido, uma caixa de diálogo modal será exibida.errorCallback : a callback which is passed any error string as an argument.titleSuffix : a string to be removed from the end of page titles.titlePrefix : a string to be removed from the beginning of page titles.