Skip to content

A clean, user-friendly blog platform for sharing articles, opinions, tutorials, and engaging content globally.

Notifications You must be signed in to change notification settings

Ahmed-Nagi1/Inspire-Ink

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Inspire & Ink

Image

Project Description

Inspire & Ink is a modern blogging platform built using Django Rest Framework (DRF) for the backend and Vue.js for the frontend. It offers seamless content creation and management with a user-friendly interface and secure authentication. The platform supports rich text content using a WYSIWYG editor, enabling users to write and format articles easily while storing content as HTML.


Features

1. Authentication

  • User authentication using Djoser and JWT (JSON Web Tokens) for secure access.
  • Registration, login, and password reset functionality.

2. Content Creation

  • Rich text editor (WYSIWYG) for writing articles with HTML content storage.

Alt text

  • Create, update, delete, and view article posts.

3. Frontend Design

  • Built with Vue.js, providing a responsive and dynamic user interface.
  • Styled using Tailwind CSS and Flowbite for a modern and consistent design.

4. Backend Functionality

  • RESTful API built using Django Rest Framework (DRF).
  • Well-structured endpoints for managing article posts and user profiles.

5. Secure Content Management

  • Role-based permissions to manage users and restrict access.
  • Secure storage of content with token-based authentication.

Technologies Used

Backend:

  • Django
  • Django Rest Framework (DRF)
  • Djoser (for user management and authentication)
  • JWT (for secure token-based authentication)

Frontend:

  • Vue.js 3
  • Tailwind CSS
  • Flowbite (UI components and design)
  • Axios (for API requests)
  • WYSIWYG Editor (for article content)

Installation

Backend Setup:

  1. Clone the repository:

    git clone https://github.com/Ahmed-Nagi1/Inspire-Ink
    cd ./backend
  2. Create and activate a virtual environment:

python -m venv env
source env/bin/activate
# On Windows: env\Scripts\activate
  1. Install dependencies:

pip install -r requirements.txt

  1. Apply database migrations:
python manage.py makemigrations
python manage.py migrate
  1. Run the development server:

python manage.py runserver

Frontend Setup:

  1. Navigate to the frontend directory:

cd ./frontend

  1. Follow the instructions in the README.md file for further setup.

Usage

  1. Access the frontend at http://localhost:3000 (or the port specified by Vue.js).

  2. API endpoints are available at http://127.0.0.1:8000/.

  3. Register a new user or log in to access content creation features.

  4. Use the rich text editor to create and format article posts.