# [stilde][stilde_repo]   **Stilde** is the template for my personal static Startpage protected by encryption. The startpage is a lightly modified version of the **[tilde][tilde_repo]** project by [cade](https://github.com/xvvvyz). I use it both locally (localhost) and self-hosted (https), that's why I wanted a way to protect the page that would still stay light, static and bypassable by an action-less URI. Stilde includes **[staticrypt][staticrypt_repo]** for that purpose and provides an authentification form to decrypt the page locally by password or by a secret decryption URI.   ---- ## Features - Original [tilde][tilde_repo] features: - Redirect to a bookmarked website. - Run a search on a bookmarked website. - Get search suggestions from DuckDuckGo. - Redirect to a specific path or uri for a bookmarked website. - Access any other url. - Lauch a search on a customized DuckDuckGo session for anything outside the scope. - New: toggle the input field by clicking on the logo (useful for mobile browsers). - WebCrypto html encryption with password prompt page. - Direct link decryption by secret hash URI. - Deployment and re-deployment with a simple build script. - New: custom logo on both form and startpage. ## License UNLICENCED : like the original [tilde][tilde_repo] project. ## Requirements - npm@lts (I use v18.16.0 with nvm) - Bash (for the `build.sh` script) ## Installation - Clone this repo in a parent directory outside of your webroot (the webroot is the destination of the build): ``` bash git clone --depth=1 https://git.tkapias.net/tkapias/stilde cd stilde ``` ## Preparation (optional) - Edit strings in french in `build.sh` (for the staticrypt form): ``` bash 85 │ --template-button "DECRYPTER" \ 86 │ --template-instructions "Crypté avec StatiCrypt." \ 87 │ --template-error "Mot de passe incorrect !" \ 88 │ --template-placeholder "Mot de passe" \ 89 │ --template-remember "Se souvenir de moi" \ ``` - Edit graphical assets in `assets/root/` (they will be copied to the destination with the encrypted html): - favicon.ico (`convert icon-512.png -define icon:auto-resize="48,32,16" favicon.ico`) - favicon.svg (square logo, width 192px) - icon-192.png (generated from favicon.svg) - icon-512.png (generated from favicon.svg) - logo.svg (trimmed favicon.svg, width 200px) - Replace the svg logo in the startpage `assets/source/index.html`: - I exported mines from inkscape, cleaned it's code and renamed paths to use them in css and scripts. ``` html 622 │