Eine leichte, datenbankfreie Suchmaschine, die schnelle und effiziente Suchfunktionen für statische Inhalte (HTML-, TXT-, MD-Dateien) und dynamische Notizen bietet. Dieses Projekt verbessert die Benutzererfahrung durch ein clientseitiges Caching-System, das den Suchabruf beschleunigt, die Serverlast reduziert und den Servicemitarbeitern Offline-Funktionalität bietet.
Clientseitige Cache-basierte Suchmaschine
1. Startbildschirm
2. Suchergebnisse
3. Offline-Zugriff
4. Notizenfunktion
Cache-Verzeichniseinstellungen
Cache-Ablauf
Inhaltsverzeichnis
Überblick
Merkmale
Wie es funktioniert
Systemarchitektur
Installation
Verwendung
Konfiguration
Screenshots
Zukünftige Verbesserungen
Lizenz
Die clientseitige Cache-basierte Suchmaschine zielt darauf ab, das Problem langsamer Abrufzeiten in herkömmlichen datenbankgesteuerten Systemen, insbesondere bei kleinen Anwendungen, zu lösen. Durch die Nutzung clientseitiger Caching-Techniken ermöglicht dieses Projekt einen schnellen Zugriff auf statische Inhalte und benutzergenerierte Notizen, ohne dass wiederholte Serverabfragen oder eine komplexe Datenbankeinrichtung erforderlich sind. Es verfügt außerdem über Offline-Suchfunktionen, sodass Benutzer auch ohne Netzwerkverbindung auf häufig verwendete Dateien und Notizen zugreifen können.
Schnelle Suche : Indiziert und ruft Inhalte schnell aus lokalen statischen Dateien (HTML, TXT, MD) und benutzergenerierten Notizen ab.
Clientseitiges Caching : Dateien, auf die häufig zugegriffen wird, werden lokal zwischengespeichert, wodurch Ladezeiten verkürzt und Serveranfragen minimiert werden.
Offline-Zugriff : Der integrierte Servicemitarbeiter ermöglicht es Benutzern, offline nach Dateien und Notizen zu suchen und darauf zuzugreifen.
Notizenverwaltung : Enthält eine einfache Anwendung zum Notieren, mit der Benutzer Notizen erstellen, bearbeiten und speichern können, die auch zum schnellen Abrufen zwischengespeichert werden.
Dateiindizierung : Dateien in bestimmten Verzeichnissen werden bei der ersten Suche indiziert und zwischengespeichert, um einen schnelleren Zugriff zu ermöglichen.
Clientseitiges Caching : Indizierte Inhalte werden in einem Cache gespeichert, sodass die Suchmaschine Dateilesevorgänge für häufig aufgerufene Dateien überspringen kann.
Servicemitarbeiter : Ein Servicemitarbeiter speichert wichtige Dateien zwischen und bietet Offline-Support, indem er Notizen und statische Inhalte ohne Internetverbindung verfügbar macht.
Abruf in Echtzeit : Dynamische Notizen werden unmittelbar nach der Erstellung zwischengespeichert und ermöglichen so den sofortigen Zugriff sowohl online als auch offline.
Das System basiert auf einem clientseitigen Caching- und Service-Worker-Modell, sodass keine Datenbank erforderlich ist. Hier ist eine vereinfachte Architektur:
Diagramm TD
UI[Benutzeroberfläche] ->|Suchanfrage| Suchmaschine
Suchmaschine ->|Cache-Treffer?| Cache
Cache -->|Ja| RetrieveFromCache[Aus Cache abrufen]
RetrieveFromCache -> DisplayResults
Suchmaschine -->|Nein| ReadFile[Datei aus Verzeichnis lesen]
ReadFile -> IndexContent[Index- und Cache-Inhalt]
IndexContent -> Cache
IndexContent -> DisplayResults[Ergebnisse anzeigen]
ServiceWorker[Service Worker] -> OfflineSupport
Notizen[Notizenspeicher] -> Cache
Notizen -> ServiceWorker
LadenBefolgen Sie diese Schritte, um das Projekt lokal einzurichten:
Klonen Sie das Repository
Git-Klon https://github.com/vansh-codes/Client-Side-Cache-Based-Search-Engine.git
Navigieren Sie zum Verzeichnis
cd Client-Side-Cache-basierte-Suchmaschine
Richten Sie XAMPP oder einen lokalen PHP-Server ein
Platzieren Sie das Projekt im entsprechenden XAMPP-Verzeichnis (z. B. C:/xampp/htdocs/
).
Starten Sie den Apache-Server.
Greifen Sie auf das Projekt zu. Öffnen Sie Ihren Browser und gehen Sie zu http://localhost/Client-Side-Cache-Based-Search-Engine
.
Inhalt durchsuchen : Verwenden Sie die Suchleiste, um in indizierten Dateien und Notizen nach Schlüsselwörtern zu suchen.
Notizen machen : Erstellen und speichern Sie Notizen, die für schnellen Zugriff und Offline-Verfügbarkeit zwischengespeichert werden.
Offline-Zugriff : Nach dem ersten Zugriff kann über den Servicemitarbeiter offline auf Dateien und Notizen zugegriffen werden.
Legen Sie die Verzeichnispfade für die Inhalts- und Notizspeicherung in der Konfigurationsdatei fest:
CACHE_DIR
: Pfad zum Speichern zwischengespeicherter Dateien.
Inhaltsordner : Ändern Sie den Pfad für statische Dateien im Verzeichnis content/
.
Ordner „Notizen“ : Ändern Sie den Pfad für dynamische Notizen im Verzeichnis notes/
.
Passen Sie die Cache-Ablaufeinstellungen an, um veraltete Dateien zu löschen und Inhalte nach Bedarf zu aktualisieren.
Erweiterte Suchfunktionen : Implementieren Sie Fuzzy-Suche und Schlüsselworthervorhebung für eine intuitivere Suche.
Verbesserte Cache-Verwaltung : Einführung von Cache-Ablaufrichtlinien für eine bessere Speicherverwaltung.
Notizen in mehreren Formaten : Unterstützt zusätzliche Notizformate (TXT, MD, HTML) und speichert sie automatisch zwischen, damit sie schneller abgerufen werden können.
Dieses Projekt ist unter der MIT-Lizenz lizenziert. Einzelheiten finden Sie in der LICENSE-Datei.
Genießen Sie schnelle, effiziente und offlinefähige Suchen!