Self-hosted, federated location sharing app and server that prioritizes user privacy and security
end-to-end-encryption location-sharing privacy self-hosted federated

test commit that breaks some funtionality? rather adds a half working darkmode toggle.

Changed files
+23
app
src
+5
app/src/home-page/home.css
··· 6 6 justify-content: center; 7 7 } 8 8 9 + .dark-theme { 10 + background: #000; 11 + color: #fff; 12 + } 13 + 9 14 .app { 10 15 width: 100%; 11 16 background: #f9fafb;
+2
app/src/home-page/home.html
··· 91 91 > 92 92 <p>New signup key: <a x-text="newSignupKey"></a></p> 93 93 </div> 94 + <br /> 95 + <button @click="toggleDarkMode()">Toggle Dark Mode</button> 94 96 </div> 95 97 </div> 96 98 </div>
+16
app/src/home-page/home.ts
··· 1 1 import Alpine from "alpinejs"; 2 2 import { Store } from "../utils/store.ts"; 3 3 import { post } from "../utils/api.ts"; 4 + import { toggleStyle } from "../utils/tools.ts"; 4 5 5 6 Alpine.data("homePageState", () => ({ 6 7 friends: [ ··· 43 44 goto(newLocation: string) { 44 45 window.location.href = 45 46 "/src/" + newLocation + "-page/" + newLocation + ".html"; 47 + }, 48 + 49 + toggleDarkMode() { 50 + /* 51 + This toggles darkmode for 'body' in the css file | use for only document types 52 + document.body.classList.toggle("dark-theme"); 53 + 54 + this toggles darkmode for '.app' in the css file | use if it isn't a document type 55 + toggleStyle("app", "dark-theme"); 56 + 57 + */ 58 + 59 + document.body.classList.toggle("dark-theme"); 60 + toggleStyle("header", "dark-theme"); 61 + toggleStyle([".app", ".friend-card", ".content"], "dark-theme"); 46 62 }, 47 63 })); 48 64