{"id":30882115,"url":"https://github.com/rikon07/the-dailycommit","last_synced_at":"2026-05-04T00:31:05.774Z","repository":{"id":310259557,"uuid":"1034057371","full_name":"Rikon07/The-DailyCommit","owner":"Rikon07","description":"A modern, fullstack Computer Science news platform for developers, by developers.","archived":false,"fork":false,"pushed_at":"2025-11-15T18:39:05.000Z","size":752,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-15T20:22:19.306Z","etag":null,"topics":["admin-dashboard","firebase","javascript","jwt","react","stripe-payments","tailwindcss"],"latest_commit_sha":null,"homepage":"https://the-daily-commit-c5e84.web.app/","language":"JavaScript","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/Rikon07.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-07T19:15:50.000Z","updated_at":"2025-11-15T18:39:08.000Z","dependencies_parsed_at":"2025-08-16T22:18:01.140Z","dependency_job_id":null,"html_url":"https://github.com/Rikon07/The-DailyCommit","commit_stats":null,"previous_names":["rikon07/the-dailycommit"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Rikon07/The-DailyCommit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rikon07%2FThe-DailyCommit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rikon07%2FThe-DailyCommit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rikon07%2FThe-DailyCommit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rikon07%2FThe-DailyCommit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Rikon07","download_url":"https://codeload.github.com/Rikon07/The-DailyCommit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rikon07%2FThe-DailyCommit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32590080,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T22:12:39.696Z","status":"ssl_error","status_checked_at":"2026-05-03T22:09:10.534Z","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":["admin-dashboard","firebase","javascript","jwt","react","stripe-payments","tailwindcss"],"created_at":"2025-09-08T08:06:41.214Z","updated_at":"2026-05-04T00:31:05.715Z","avatar_url":"https://github.com/Rikon07.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📰 The Daily Commit\n\nA modern, fullstack Computer Science news platform for developers, by developers.  \nBuilt with React, Tailwind CSS, Express, MongoDB, Firebase Auth, Stripe, and more.\n\n---\n\n[![React](https://img.shields.io/badge/React-20232A?style=for-the-badge\u0026logo=react\u0026logoColor=61DAFB)](https://react.dev/)\n[![TailwindCSS](https://img.shields.io/badge/TailwindCSS-0ea5e9?style=for-the-badge\u0026logo=tailwindcss\u0026logoColor=white)](https://tailwindcss.com/)\n[![Firebase](https://img.shields.io/badge/Firebase-FFCA28?style=for-the-badge\u0026logo=firebase\u0026logoColor=white)](https://firebase.google.com/)\n[![Vite](https://img.shields.io/badge/Vite-646CFF?style=for-the-badge\u0026logo=vite\u0026logoColor=white)](https://vitejs.dev/)\n[![Deployed](https://img.shields.io/badge/Live-Demo-10B981?style=for-the-badge\u0026logo=vercel\u0026logoColor=white)](https://the-daily-commit-c5e84.web.app/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=for-the-badge)](https://opensource.org/licenses/MIT)\n\n---\n\n## 🚀 Live Site\n\n[https://the-daily-commit-c5e84.web.app/](https://the-daily-commit-c5e84.web.app/)\n\n---\n\n## 👤 Admin Login\n\n- **Username:** `rik.shelby@gmail.com`\n- **Password:** `@Shelby12345`\n\n\n---\n\n## ✨ Features\n\n- 🔒 **JWT Auth with Firebase** (localStorage, no cookies)\n- 📰 **Trending Articles** slider (by views)\n- 🏷️ **Filter \u0026 Search** by publisher, tags, and title\n- 🏆 **Premium Plan:** Unlimited posts, premium articles, priority review\n- 📝 **Normal Plan:** 1 post limit, access to all approved articles\n- 📈 **Statistics:** User and article analytics with animated counters\n- 🌍 **Tech News Map:** Interactive map of news locations in Bangladesh\n- 🏅 **Top Contributors:** Most active writers highlighted\n- 🏢 **All Publishers:** Marquee slider of publisher logos\n- 📊 **Admin Dashboard:** User management, article approval, publisher management, charts\n- 💳 **Stripe Payments:** Secure premium subscription\n- 🧑‍💻 **Profile Management:** Update name, photo, and more\n- 🛡️ **Role-based Access:** Admin, premium, and normal user flows\n- 📱 **Fully Responsive:** Mobile, tablet, and desktop\n- 🎨 **Dark/Light Mode:** Theme toggle everywhere\n- 🟦 **GSAP Animations:** Playful, professional UI transitions\n\n---\n\n## 🔥 More\n\n- 🔐 Secure Firebase Authentication (Email/Pass + Google)\n- 🌐 Fully Responsive Layout\n- 💬 SweetAlert2 Feedback for User Actions\n- 🎞️ Carousel + Animated Banner Section\n- 🌙 Light \u0026 Dark Mode Support\n- 📁 Protected Routes\n- 🧭 Scroll-based Navbar Transparency\n- 📊 Rating Stars, Skeleton Loaders \u0026 Tooltips\n- ⚡ Fast loading with Vite + Lazy loading\n\n---\n\n\n\n## 🧠 Tech Stack\n\n| Layer        | Tech Used |\n|--------------|-----------|\n| **Frontend** | React, React Router, Tailwind CSS |\n| **Backend**  | Express.js, MongoDB, Firebase Admin, Stripe, CORS |\n| **Auth**     | Firebase Authentication |\n| **Hosing**   | Firebase Hosting, Backend on Vercel |\n| **Packages** | Framer Motion, Swiper, React Query, React Leaflet, React Select, React Loading Skeleton, SweetAlert2, Stripe.js |\n\n---\n\n## Folder Structure\n\n    ├── public\n      └── vite.svg\n    ├── src\n      ├── App.css\n      ├── App.jsx    \n      ├── Components\n      │   ├── Dashboard Components\n      │   │   ├── DashboardNavbar.jsx\n      │   │   ├── DashboardSidebar.jsx\n      │   │   └── Pagination.jsx\n      │   ├── Extra Components\n      │   │   ├── Error.jsx\n      │   │   ├── GlowingCard.jsx\n      │   │   ├── Loader.jsx\n      │   │   ├── Pagination.jsx\n      │   │   ├── SubscriptionWrapper.jsx\n      │   │   └── ThemeToggle.jsx\n      │   └── Home Components\n      │   │   ├── AllPublisher.jsx\n      │   │   ├── Banner.jsx\n      │   │   ├── BentoFeatures.jsx\n      │   │   ├── ContactUs.jsx\n      │   │   ├── Faq.jsx\n      │   │   ├── Features.jsx\n      │   │   ├── Footer.jsx\n      │   │   ├── HomeModal.jsx\n      │   │   ├── Navbar.jsx\n      │   │   ├── Plans.jsx\n      │   │   ├── ResourceLibrary.jsx\n      │   │   ├── Statistics.jsx\n      │   │   ├── TechNewsMap.jsx\n      │   │   ├── TopContributors.jsx\n      │   │   └── TrendingArticles.jsx\n      ├── Firebase\n      │   └── firebase.config.js\n      ├── Hooks\n      │   ├── Axios.jsx\n      │   ├── UseAuth.jsx\n      │   ├── useAdmin.jsx\n      │   └── useAxiosSecure.jsx\n      ├── Layouts\n      │   ├── AuthLayout.jsx\n      │   ├── Dashboard.jsx\n      │   └── MainLayout.jsx\n      ├── Pages\n      │   ├── Authentication Pages\n      │   │   ├── Login.jsx\n      │   │   ├── Profile.jsx\n      │   │   └── Register.jsx\n      │   ├── Dashboard Pages\n      │   │   ├── AddPublisher.jsx\n      │   │   ├── AllArticles.jsx\n      │   │   ├── AllUsers.jsx\n      │   │   └── DashboardHome.jsx\n      │   └── Home pages\n      │   │   ├── AddArticles.jsx\n      │   │   ├── AllArticle.jsx\n      │   │   ├── ArticleDetails.jsx\n      │   │   ├── Home.jsx\n      │   │   ├── MyArticles.jsx\n      │   │   ├── PremiumArticles.jsx\n      │   │   ├── Subscription.jsx\n      │   │   └── UpdateArticle.jsx\n      ├── Providers\n      │   ├── AdminRoute.jsx\n      │   ├── AuthProvider.jsx\n      │   ├── Contexts.jsx\n      │   └── Private.jsx\n      ├── Routes\n      │   └── Routes.jsx\n      ├── assets\n      │   ├── Animations\n      │   │   └── Animation - Error.json\n      │   ├── DC_logo.png\n      │   ├── Font\n      │   │   ├── EireneSans-Regular.otf\n      │   │   ├── SFPRODISPLAYREGULAR.OTF\n      │   │   └── ciguatera.otf\n      │   └── react.svg\n      ├── index.css\n      └── main.jsx\n    ├──index.html\n    ├── package.json\n    ├── tailwind.config.js\n    └── vite.config.js\n    ├── .firebase\n      └── hosting.ZGlzdA.cache\n    ├── .firebaserc\n    ├── .gitignore\n    ├── README.md\n    ├── eslint.config.js\n    ├── firebase.json\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frikon07%2Fthe-dailycommit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frikon07%2Fthe-dailycommit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frikon07%2Fthe-dailycommit/lists"}