Newspaper Server Side Repo: https://github.com/anfal11/newspaper-server
LiveLink: https://newspaper-f5b3f.web.app
- Features:
- In the home, users can see a banner, trending cards based on views, all publishers, subscriptions, and a footer.
- A normal user can't see the details of a premium card, but he or she can access other cards except premium ones.
- A user can create an article, but it will be pending because only the admin can approve it, and the blog or article card will be shown on all article pages.
- On the admin dashboard, an admin can see the Publication Articles Percentage Pie Chart, Users Bar Chart, and Static Line Chart and see the stats of Total Users, Total Views, and Total Posts.
- On the admin dashboard, in all user pages, only the admin can see all users' emails, and the admin can delete a user or change the role to admin.
- On the admin dashboard, on all article pages, the admin can see the Article Title, Author Name, Author Email, Posted Date, Status, and Publisher Actions. Here, if the Admin wants he can approve or delete a post with the proper reason which will be shown on status, and also admin can make a post premium form action.
- On the admin dashboard, on add publisher pages, the Admin can add a publisher with the image.
- In my article pages, a user can see his/her posted articles where if approved the status will be approved, and if declined then there will be status declined and beside the decline text, a button will show where he/she can check why an admin decline his/her post/article.
- On the Premium Article Page, everyone can see only all the premium articles there.
- On the user photo, the user can see his details and he/she can edit his details.
- Firebase Authentication is used here.
- On the user dashboard, he/she can see his payment or not payment for a premium article and he/she can pay from there.
- On the user dashboard, he/she can see his payment history on the payment history pages.
- JSONWebToken / JWT has been used for web security.
- Packages used here:
- mui/icons-material,
- mui/material,
- stripe/react-stripe-js,
- stripe/stripe-js,
- tanstack/react-query,
- axios,
- firebase,
- jsonwebtoken,
- react,
- react-countup,
- react-dom,
- react-google-charts,
- react-hook-form,
- react-hot-toast,
- react-icons,
- react-infinite-scroll-component,
- react-loader-spinner,
- react-router-dom,
- react-select,
- react-simple-typewriter,
- stripe,
- sweetalert2,
- swiper