Skip to content

Latest commit

 

History

History
68 lines (52 loc) · 2.38 KB

README.md

File metadata and controls

68 lines (52 loc) · 2.38 KB

Blogging Website Project

Overview

image

This project involves the development of a full-stack blogging website with the following features:

  • User Registration and Authentication: Users can sign up and log in securely.
  • Article Interaction: Users can leave comments on articles and like articles.
  • Subscription Feature: Allows users to interact with each other through subscriptions.
  • Content Management: Users have full control over their authored content, including creating, updating, and deleting articles. This is facilitated by a WYSIWYG editor.
  • User Management: Users can manage their personal information, such as username and password.
  • Analytics and Statistics: Provides insights into user-created content.

Key Technologies Used

  • Express.js: Web framework for handling HTTP requests and middleware functions.
  • Handlebars: Templating engine for server-side rendering.
  • SQLite: Lightweight database solution for data storage.
  • DAOs (Data Access Objects): Manage database interactions and perform CRUD operations.
  • SQL: Utilized for database schema initialization and queries.
  • AJAX Requests: Facilitate asynchronous communication between frontend and backend.
  • Cookies: Essential for authentication token storage and session verification.
  • Bcrypt: Password hashing and salting for enhanced security.
  • Multer: Handles file upload management.
  • JSON: Our standard data format for information exchange.
  • JavaScript: Used for UI logic, event handling, and AJAX requests.
  • CSS Animations: Enhance user experience and interactivity.
  • CSS Flex and Grids: Layout management in page views.

Getting Started

To run the project locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/tonexie/fullstack-blog.git
    
  2. Navigate to the project directory:

    cd Blogging-system
    
  3. Install dependencies using npm:

    npm install
    
  4. Run the program:

    npm run dev
    
  5. Navigate in the browser to:

    http://localhost:3000/
    

Test Accounts

For testing purposes, the following fabric accounts are provided:

  • user1: Password: 123
  • user2: Password: 123
  • ...
  • user10: Password: 123