Skip to content

Pythagora-io/app-lab-pythaspace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

fc25efb · Nov 13, 2024

History

16 Commits
Nov 13, 2024
Nov 13, 2024
Nov 13, 2024
Nov 12, 2024
Nov 11, 2024
Nov 13, 2024
Nov 11, 2024
Nov 11, 2024
Nov 13, 2024
Nov 12, 2024
Nov 12, 2024

Repository files navigation

PythaSpace

PythaSpace is a cutting-edge platform designed for publishing, sharing, and discovering high-quality articles and stories across various domains. It aims to foster a vibrant community of writers and readers, promoting intellectual discourse and knowledge exchange.

Overview

PythaSpace is built with a robust architecture that leverages modern web technologies to deliver an intuitive and seamless user experience. The platform is structured as follows:

  • Backend: Node.js with the Express framework for handling server-side logic.
  • Database: MongoDB managed with Mongoose ORM for efficient data storage and retrieval.
  • Frontend: EJS for templating, Bootstrap for responsive design, and Vanilla JS for client-side functionality.
  • AI Integration: OpenAI for content moderation and writing assistance.
  • Additional Libraries: bcrypt for password hashing, multer for file uploads, and social-share-js for social media sharing.

The project structure includes:

  • Models: Mongoose schemas for User, Article, and Comment.
  • Routes: Express routes for authentication, article management, and API endpoints.
  • Views: EJS templates for rendering pages.
  • Public: Static files including CSS, JavaScript, and images.
  • Services: Helper services for AI interactions and file uploads.
  • Middleware: Authentication middleware for protecting routes.

Features

PythaSpace offers a wide range of features to enhance the user experience:

  1. User Registration and Login:

    • Users can register and log in using their email and password.
    • Essential for publishing, commenting, and utilizing the AI writer helper.
  2. Article Publishing:

    • Support for multimedia content (images and videos).
    • AI-powered moderation using OpenAI.
    • Articles can be saved as drafts or published directly.
    • Moderation issues are highlighted for user correction.
  3. Article Organization:

    • Articles are categorized into Technology, Science, Health & Wellness, Business & Finance, Arts & Culture, and Lifestyle.
    • Tagging system for specific topics, writing styles, and content formats.
  4. Commenting System:

    • Single-level comments on articles to foster discussions.
  5. Social Sharing:

    • Integration with social-share-js for sharing articles on social media platforms.
  6. AI Writer Helper ("Magic Helper"):

    • Provides writing suggestions based on the title and existing content.
    • Utilizes the user's OpenAI API key for generating suggestions.

Getting started

Requirements

To run PythaSpace, ensure you have the following technologies installed on your computer:

  • Node.js
  • MongoDB (or use a cloud version like MongoDB Atlas)

Quickstart

Follow these steps to set up and run the project:

  1. Clone the repository:

    git clone <repository-url>
    cd PythaSpace
  2. Install dependencies:

    npm install
  3. Set up environment variables:

    • Create a .env file in the project root using the provided .env.example as a template.
    • Populate the .env file with your values (e.g., MongoDB URL, session secret).
  4. Start the application:

    npm start
  5. Access the application:

    • Open your browser and navigate to http://localhost:3000 to start using PythaSpace.

License

The project is open source, licensed under the MIT License. See the LICENSE.

Copyright © 2024 Pythagora-io.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published