{"id":49568318,"url":"https://github.com/joupify/twitter_clone","last_synced_at":"2026-05-03T12:46:48.039Z","repository":{"id":309712476,"uuid":"929188276","full_name":"joupify/twitter_clone","owner":"joupify","description":"Twitter clone built with Ruby on Rails 8, featuring Turbo, Stimulus, real-time notifications, private messaging, and advanced search.","archived":false,"fork":false,"pushed_at":"2025-08-13T10:49:06.000Z","size":1551,"stargazers_count":1,"open_issues_count":10,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-05-03T12:46:44.366Z","etag":null,"topics":["actioncable","devise","hotwire","notifications","private-messages","rails8","real-time","redis","ruby-on-rails","search","sidekiq","social-network","stimulus","stimulusjs","tailwindcss","turbo","twitter-clone","websockets"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joupify.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-02-08T01:13:02.000Z","updated_at":"2025-08-13T10:49:10.000Z","dependencies_parsed_at":"2025-08-13T12:33:23.323Z","dependency_job_id":"c9aea511-47a6-4736-abd0-38864c296679","html_url":"https://github.com/joupify/twitter_clone","commit_stats":null,"previous_names":["joupify/twitter_clone"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/joupify/twitter_clone","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joupify%2Ftwitter_clone","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joupify%2Ftwitter_clone/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joupify%2Ftwitter_clone/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joupify%2Ftwitter_clone/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joupify","download_url":"https://codeload.github.com/joupify/twitter_clone/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joupify%2Ftwitter_clone/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32569714,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["actioncable","devise","hotwire","notifications","private-messages","rails8","real-time","redis","ruby-on-rails","search","sidekiq","social-network","stimulus","stimulusjs","tailwindcss","turbo","twitter-clone","websockets"],"created_at":"2026-05-03T12:46:47.356Z","updated_at":"2026-05-03T12:46:48.033Z","avatar_url":"https://github.com/joupify.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Twitter Clone 🕊️  \n**Réseau social dynamique construit avec Ruby on Rails 8**  \nProjet personnel de développement full-stack\n\n---\n\n## 📍 Description\n\nTwitter Clone est une application web inspirée de Twitter. Elle permet aux utilisateurs de publier des tweets, d’interagir avec d’autres (likes, retweets, commentaires), d’envoyer des messages privés, et de suivre leurs abonnements en temps réel.\n\nCe projet met l’accent sur l’interactivité, la performance et l’expérience utilisateur, en exploitant toute la puissance de Ruby on Rails 8 et Hotwire.\n\n---\n\n## 🚀 Fonctionnalités Implémentées\n\n### 🔐 Authentification (via Devise)\n- Inscription / Connexion / Déconnexion\n- Réinitialisation du mot de passe par email\n- Sessions sécurisées\n\n### 👤 Gestion du Profil\n- Création / Édition du profil (avatar, bannière, bio)\n- Génération automatique d’un nom d’utilisateur (username)\n- Suivi des statistiques : tweets, likes, retweets, commentaires\n\n### 📝 Tweets \u0026 Interactions\n- Création de tweets (texte uniquement)\n- Timeline dynamique\n- Likes / Retweets / Commentaires\n- Compteur de vues\n- Système de favoris (tweets enregistrés)\n- Partage de tweets\n\n### 🔔 Notifications en Temps Réel (Noticed + Turbo Streams)\n- Notification en cas de like, retweet, commentaire, follow ou mention\n- Gestion des notifications non lues\n\n### 🔄 Système de Suivi\n- Suivre / Se désabonner d’un utilisateur\n- Listes des abonnés et abonnements\n- Vérification anti-self-follow\n\n### 💬 Messagerie Privée (DMs)\n- Discussions privées entre utilisateurs\n\n### 🔍 Recherche \u0026 Navigation\n- Recherche par hashtag, utilisateurs, contenu\n- Tendances (Trending Topics)\n- Mode nuit\n\n---\n\n## 🛠️ Technologies Utilisées\n\n| Outil / Lib | Usage |\n|-------------|-------|\n| **Ruby on Rails 8** | Framework principal |\n| **PostgreSQL** | Base de données |\n| **Devise** | Authentification |\n| **Hotwire (Turbo + Stimulus.js)** | Réactivité frontend |\n| **Active Storage** | Stockage des avatars \u0026 bannières |\n| **Noticed** | Système de notifications |\n| **Sidekiq + Redis** | Tâches en arrière-plan |\n| **RSpec, FactoryBot** | Tests automatisés |\n\n---\n\n## 📂 Installation \u0026 Lancement\n\n```bash\ngit clone https://github.com/votre-utilisateur/twitter-clone.git\ncd twitter-clone\nbundle install\nyarn install\nrails db:create db:migrate db:seed\nrails s\n```\n\nAccéder à l’application : [http://localhost:3000](http://localhost:3000)\n\n---\n\n## 🔜 Fonctionnalités à Venir\n\n- Vérification des comptes (badge bleu)\n- Mode brouillon pour les tweets\n- Système de blocage / signalement\n- Statistiques avancées\n- Monétisation via abonnements premium\n\n---\n\n## 🎯 Compétences Mises en Avant\n\n- Maîtrise de Ruby on Rails 8 et Hotwire (Turbo Streams)\n- Conception d’une architecture MVC REST complète\n- Interactions en temps réel via WebSockets\n- Intégration d’un système de notifications moderne\n- Respect des bonnes pratiques de performance et de sécurité\n\n---\n\n## 👩‍💻 Auteur\n\n*Malika (joupify)** \nDéveloppeuse Full Stack Ruby on Rails  \n[Portfolio GitHub](https://github.com/joupify)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoupify%2Ftwitter_clone","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoupify%2Ftwitter_clone","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoupify%2Ftwitter_clone/lists"}