Skip to content

Welcome to Blog App! Inspired by the need to maintain a personal blog, I ventured into creating this web application using React, Express, Node.js, and MySQL. This project marks a new milestone for me as I explore the powerful combination of these technologies to build a dynamic and interactive blog platform.

Notifications You must be signed in to change notification settings

RadithSandeepa/blog-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Blog App

In an age where sharing ideas, stories, and experiences online has become second nature, having a dedicated platform to manage and publish blog posts is invaluable. This blog app provides a straightforward and efficient way to create, read, update, and delete blog posts, making it easy for anyone to maintain their online presence.

Table of Contents

Screenshots

Login

Register

Home(1)

Home(2)

Single

Write

Edit

Profile

Features

  • Create Posts: Easily compose and publish new blog posts with a rich text editor.
  • Read Posts: Browse through all published blog posts, with options to filter by categories.
  • Update Posts: Edit and update existing blog posts to keep content fresh and relevant.
  • Delete Posts: Remove blog posts that are no longer needed with a simple action.
  • Draft Posts: Save posts as drafts if you're not ready to publish them right away.
  • Profile Management: Edit your personal information and change your password on your profile page.
  • Route Protection: Access control to ensure users can only edit or delete their own posts.

Setup Instructions

1.Clone the repository:

 git clone https://github.com/RadithSandeepa/blog-app.git

2.Navigate to the project directory:

 cd blog-app

3.Install dependencies:

 cd api
 npm install
 cd client
 npm install

4.Set up MySQL database:

  • Create a MySQL database for the project.
  • Copy the .env.example file and rename it to .env.
  • Open the .env file and fill in the necessary data:
  DB_HOST=your_mysql_host
  DB_USER=your_mysql_username
  DB_PASSWORD=your_mysql_password
  DB_DATABASE=your_database_name

Replace your_mysql_host, your_mysql_username, your_mysql_password, and your_database_name with your MySQL database connection details.

5.Import the provided SQL file (blog_app.sql) into your MySQL database to create the necessary tables and data.

6.Start the server:

 npm start

7.Open your preferred web browser and navigate to http://localhost:3000 to access the Blog App.

Learning Journey

Working on this blog app has been an enriching experience. Here are some of the key learnings:

  • React-Quill: Integrated a rich text editor for creating and editing blog posts, providing a user-friendly interface for content creation.
  • Multer: Implemented file uploads to handle images and other media attachments in blog posts.

Future Enhancements

  • Commenting System: Adding a feature for readers to leave comments on blog posts, fostering community interaction.

  • Mobile Responsiveness: Ensuring the application is fully responsive and optimized for mobile devices.

Thank you for exploring my blog app project. Stay tuned for more updates as I continue to enhance its features and capabilities!

Happy blogging!✒️📝

About

Welcome to Blog App! Inspired by the need to maintain a personal blog, I ventured into creating this web application using React, Express, Node.js, and MySQL. This project marks a new milestone for me as I explore the powerful combination of these technologies to build a dynamic and interactive blog platform.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published