Front end for CRUDing blogs with interfaces built using next js typescript tailwindcss
- This is a blog application to manage posts which are published or directed to TipLogger blog website. Refer the code here for more information. This blog manager application helps to CRUD blog posts, manage comments and replies by users ( tracking unusual behavior of users ), manage users, and even more manage the suggestions of users as inceptional benefit of the post's idea.
-
The live version of this application is not accessible as it requries special admin password, but after forking and manipulating it as per your need and interest you might have your own password, which enables you to manage your posts in your own live version app.
-
Here the admin can create blog post in two different ways, first by directly clicking create post button, or second from visiting suggestions there will be a button to take him/her to the form to create a post which is adopted from that suggestion. the former way will create a post which is conceived out of author's mind, but the later is suggested and the post will be written according to the suggestion's real intention.
-
Posts from suggestions are always include those suggestions at footer of every post on Tiplogger application.
-
Admin can track the activities of users for instance likes, dislikes, views, comments and replies, and can take actions based on the mannnerism users show on this actions, like warning and terminating the accounts of users.
- Front end frameword : Here Next js is used to build interfaces, to aquire benefits from server side rendering and good user experience.
- CSS framework: TailwindCSS, utility first framework which flourished this applications in almost every stylings and micro-interactive functionalities for better user experience.
- Type safe development: TypeScript, has been the go to languange these days to make typing perfect, so I used it.
- TinyMCE : as an editor with enhanced formatting
To install the packages, use the following steps
-
open your terminal in VS code( if you use so):
ctrl + backtick -
Then do
npm install- To Run the app in your dev server
npm run dev #then develpement server will start listening on port 3003, you can change it from package.json file- Creating, updating, viewing and deleting posts, comments and replies.
- Publishing and unpublishing posts on every desired instances, even more creating drafted version of a post from the inception.
- Liking and disliking a post, comments and replies.
- admin restriction on updating comments and replies.
- tracking suggestions and create a post based on them.
- tracking the who of actions eg. who liked, who replied who viewed, who commented and who liked or disliked that comment
- warning and terminating user account.
- marking suggestions with different statuses of addressing.
- pagination of list of items like posts, users, and comments. there is also a way to limit the number of items per page.
Contributions are welcome. Your suggestions are invaulable to me. If you plan to do so, follow the following steps in two different ways.
- Fork the repository, if you want to work on it on your dedicated repository,
- Optimize per use suitability in your local machine (it is all yours after that, but I would love to see your suggestions)
- And code around limitlesslly
- Clone the repository (have the exact copy of the codebase on your local machine);
- Create an issue for your intended changes.
- Create a branch for that issue.
- Then change to the root directory while your are at it do,
git fetch --all
git checkout [your_branch_name]- Make changes on that branch.
- After you are comfortable with your new feature or suggestions (whatever), you would be benefited from
git pull origin [main_branch] - Finally push your changes
git push - Create pull request, I am there to approve.
This project is licensed under the MIT License. Feel free to play around manipulating it.
This front end application is deployed on vercel, and the
- API: is served from Render, which serves the frontend app
- Database: postgresql database is awesomely served from Railway, which keeps track of CRUDing attempts.
Application is Live at Zach Logger.