# libere-tes-chaine-de-mots

Je te présente Libère tes chaînes de mots, mon nouveau projet de moteur de recherche de publications sur les médias sociaux et autres plateformes web.

Ce logiciel est construit avec le moteur de recherche TypeSense et du code Python. Je réutilise du code de mon ancien projet Libère tes chaînes de mots, que j'avais lancé il y a 2 ans.

Il permet d'explorer nos données de publications exportées depuis les plateformes. Actuellement LinkedIn, Facebook, Instagram et Wordpress sont supportés. D'autres plateformes viendront sous peu dont les podcasts en RSS, Threads et les infolettres.

- Ancien vidéo démo disponible ici: https://videos.jevalide.ca/w/civfiTK5RQiEYLoMhonWPV

- Code disponible ici: https://git.jevalide.ca/lcm/libere-tes-chaine-de-mots (tu es ici en ce moment)

- Soutien disponible pour installation et configuration en mode consultation express: https://jevalide.ca/express


# Installation

Pour utiliser cet outil, tu as besoin d'installer des logiciels, d'obtenir tes données de sauvegarde et ensuite d'exécuter des scripts.

## Logiciels requis

- [Docker Desktop](https://www.docker.com/products/docker-desktop/)
- [Homebrew sur MacOS](https://brew.sh/) pour installer des trucs (si tu l'as pas déjà t'as manqué de quoi !)
- Git (Installer avec Homebrew sur Mac, [Git Bash](https://git-scm.com/downloads) sur Windows)
- Python (Installer avec Homebrew sur Mac, [Site officiel Python](https://www.python.org/downloads/windows/) sur Windows)
- Un IDE tel que [Visual Studio Code](https://code.visualstudio.com/) ou [IntelliJ IDEA](https://www.jetbrains.com/idea/)

## Obtenir les données

Tu peux obtenir une sauvegarde des données de tes réseaux sociaux. Je t'ai mis les instructions pour chaque réseau en PDF

### LinkedIn

- [Demander les fichiers de données pour le profil LinkedIn](demander_donnees/demander_linkedin.pdf)
- [Extraire les fichiers de données pour le profil LinkedIn](demander_donnees/extraire_linkedin.pdf)

### Instagram

- [Demander tes données de Facebook et Instagram](demander_donnees/demander_facebook_instagram.pdf)
- [Extraire les fichiers de données pour Instagram](demander_donnees/extraire_instagram.pdf)

### Facebook

- [Extraire les fichiers de données pour le profil personnel Facebook](demander_donnees/extraire_facebook_personnel.pdf)
- [Extraire les fichiers de données pour la page entreprise Facebook](demander_donnees/extraire_facebook_entreprise.pdf)
- [Demander tes données de Facebook et Instagram](demander_donnees/demander_facebook_instagram.pdf)

### Wordpress

- [Extraire les données de ton site Wordpress](demander_donnees/extraire_wordpress.pdf)

## Cloner le projet et initialiser le moteur de recherche

- Clone le projet avec Git
- Configure ta clé API en copiant `.env.template` dans `.env` et en y mettant une clé API de ton choix
- Configure les autres variables d'environnement dans `.env`.
- Exécute le fichier `docker-compose.yml` avec Docker Compose pour installer le moteur de recherche TypeSense
- Connecte-toi à l'application en lançant run_streamlit_app.py et en allant au http://localhost:8501.
- Si tout fonctionne, tu vas accéder à l'interface de recherche

## Mettre les fichiers au bon endroit

- Crée la structure de répertoire en exécutant [00_creer_data_repo.py](import_data/00_creer_data_repo.py)
- Mets les fichiers au bon endroit dans la structure de répertoire en suivant cette capture d'écran

![ou-mettre-fichiers-reseaux.png](images/ou-mettre-fichiers-reseaux.png)

- Exécuter le fichier qui crée les index dans le moteur de recherche  [00_creer_reseauxsociaux.py](import_data/00_creer_reseauxsociaux.py)
- Ensuite exécuter tous les fichiers Python pertinents pour charger les données que tu as téléchargées. Tu peux aussi utiliser [run_all_imports.sh](import_data/run_all_imports.sh).