lebogangolifant / _scribez

Collaborative writing platform

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

_Scribez

_Scribez is a web application that enables users to create, manage, and collaborate on journals and entries. It provides a platform for users to document their thoughts, ideas, and experiences collaboratively.

Table of Contents

Features

  • User Authentication: Register, login, and logout securely using JWT authentication. TODO
  • Journal Management: Create, update, and delete journals with basic authorization.
  • Entry Management: Create, update, and delete entries within journals.
  • Basic Collaboration: Real-time collaboration on journal entries with conflict resolution mechanisms (optional).

Technologies Used

  • MongoDB: NoSQL database for storing user data, journals, and entries.
  • Express.js: Backend framework for handling HTTP requests and business logic.
  • React.js: Frontend library for building user interfaces.
  • Node.js: JavaScript runtime environment for running server-side code.
  • JWT (JSON Web Tokens): Token-based authentication mechanism. TODO
  • Axios: HTTP client for making requests from the frontend to the backend.

Getting Started

Prerequisites

Before you begin, ensure you have the following tools installed:

  • Node.js and npm
  • MongoDB

Installation

  1. Clone the repository:

    git clone https://github.com/lebogangolifant/_scribez.git
  2. Install dependencies:

    cd _scribez
    npm install
  3. Set up MongoDB:

    • Make sure MongoDB is running.

    • Create a .env file in the project's root directory.

    • Add your MongoDB connection string to the .env file:

      MONGODB_URI=your-mongodb-connection-string
      

      Replace your-mongodb-connection-string with your actual MongoDB connection string.

Usage

  1. Start the backend server:

    cd backend
    node server.js
  2. Start the frontend server:

    cd frontend
    npm start
  3. Access the application in your browser at http://localhost:3000.

API Endpoints

The API endpoints are documented in the API DOCUMENTATION file.

Frontend

The frontend is built with React.js, utilizing components for journal and entry management, user authentication, and collaboration features.

Backend

The backend is built with Node.js and Express.js, providing RESTful APIs for user authentication, journal and entry management, and collaboration functionalities. MongoDB is used as the database for storing user data, journals, and entries.

User Authentication

User authentication is implemented using JWT (JSON Web Tokens) for secure registration, login, and logout functionality. 'TODO'

Contributing

Contributions are welcome! Please follow the contribution guidelines.

License

This project is licensed under the MIT License.

About

Collaborative writing platform


Languages

Language:JavaScript 86.0%Language:HTML 9.0%Language:CSS 4.9%