DEV Community

faizanxmulla
faizanxmulla

Posted on

Vue + Flask - Bloglite Application Source Code.

A web application where users can register, login, create and manage posts, comment on other users' posts, follow and unfollow other users, and search for other users. Additional features include : Backend jobs like export, alert and reporting jobs.

LINK :

GitHub logo faizanxmulla / flask-blog-app-v2

A web application where users can register, login, create and manage posts, comment on other users' posts, follow and unfollow other users, and search for other users. Additional features include : Backend jobs like export, alert and reporting jobs.

flask-blog-app-v2

A web application where users can register, login, create and manage posts, comment on other users' posts, follow and unfollow other users, and search for other users. Additional features include : Backend jobs like export, alert and reporting jobs.

Features :

  • User authentication : Signup and Login (Token Based Authentication - JWT).

  • Account management : Create, view, edit, and delete user accounts.

  • Content management : Create, view, edit, and delete posts.

  • User profile : View own posts, followers, and follows.

  • User feedback : Comment on posts to express opinions.

  • Explore other users : View their posts, followers, and follows.

  • Social features : Search, follow, and unfollow other users.

  • Personalized feed : View posts from followed users.

  • RESTful API : API available for posts, users, comments, and follows.

  • User-Triggered Async Jobs : Download user's posts as a CSV file.

  • Daily Reminder Jobs : Receive daily reminders to post.

  • Scheduled Jobs

Features :

  1. User authentication : Signup and Login (Token Based Authentication - JWT).

  2. Account management : Create, view, edit, and delete user accounts.

  3. Content management : Create, view, edit, and delete posts.

  4. User profile : View own posts, followers, and follows.

  5. User feedback : Comment on posts to express opinions.

  6. Explore other users : View their posts, followers, and follows.

  7. Social features : Search, follow, and unfollow other users.

  8. Personalized feed : View posts from followed users.

  9. RESTful API : API available for posts, users, comments, and follows.

  10. User-Triggered Async Jobs : Download user's posts as a CSV file.

  11. Daily Reminder Jobs : Receive daily reminders to post.

  12. Scheduled Jobs : Receive a report as an email or PDF summarizing engagement for the month.

  13. Performance and Caching - added caching & cache expiry where required to increase the API performance.

=========================

Technologies Used :

  1. Flask: backend API is developed using Flask, a lightweight and flexible web framework for Python.

  2. VueJS: frontend UI is built using VueJS CLI, a popular JavaScript framework for building user interfaces.

  3. Jinja2 templates : used for rendering HTML templates and sending emails.

  4. Bootstrap : used for styling and UI components to create an attractive and responsive user interface.

  5. SQLite and SQLAlchemy : SQLite database is used for data storage, and SQLAlchemy is used as an ORM (Object-Relational Mapping) tool to interact with the database.

  6. Flask-Restful : used to develop the RESTful API for the app

  7. Flask-SQLAlchemy : used to access and modify the app's SQLite database.

  8. Flask-Celery : used for asynchronous background jobs at the backend.

  9. Flask-Caching: used for caching API outputs and increasing performance.

  10. Redis : used as an in-memory database for the API cache and as a message broker for celery.

  11. Git : responsible for version control.

=========================

Do ⭐ the repository, if it inspired you, gave you ideas for your own project or helped you in any way !!!

Top comments (0)