Skip to content

stepbystepcode/flypen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

81fb7cd · May 8, 2024
Sep 20, 2023
Sep 20, 2023
Mar 29, 2024
Oct 2, 2023
Apr 20, 2024
Sep 22, 2023
Oct 2, 2023
Sep 20, 2023
Sep 28, 2023
Apr 2, 2024
Sep 22, 2023
Mar 28, 2024
Oct 11, 2023
Apr 2, 2024
Oct 2, 2023
Mar 29, 2024
Oct 13, 2023
Sep 22, 2023
Oct 12, 2023
Oct 12, 2023
Oct 12, 2023
Oct 12, 2023
Oct 2, 2023
Mar 29, 2024
Apr 19, 2024
Apr 24, 2024
Apr 19, 2024
Oct 2, 2023
Apr 24, 2024
Apr 22, 2024
Apr 21, 2024
Apr 22, 2024
Apr 22, 2024

Repository files navigation

Flypen

LICENSE languange

Read this in other languages: English, 简体中文.

C++ Course Design

An Office Collab Backend

This is the Flypen C++ backend service for the Office Collab web application.

Frontend Project for Flypen is Here

Features

  • Real-time collaborative editing of documents
  • Chat and notifications
  • User management and access control
  • Document management and storage (markdown)

Architecture

  • Server application built with C++ drogon famework
  • MariaDB database for storage
  • REST APIs for client communication
  • Use MySQL Connector/C++ 8.1.0 connect database

Getting Started

Installation (Automatic)

sudo apt install git gcc g++ cmake libjsoncpp-dev uuid-dev zlib1g-dev openssl libssl-dev libpqxx-dev
git clone https://github.com/stepbystepcode/flypen.git --recursive
cd flypen
./run.sh

Installation (Manual)

Not Recommended

git clone https://github.com/stepbystepcode/flypen.git
cd flypen
git submodule update --init
cd drogon
git submodule update --init
sudo apt install git gcc g++ cmake libjsoncpp-dev uuid-dev zlib1g-dev openssl libssl-dev
mkdir build
cd build
cmake ..
make -j 8
sudo make install
cd ../..
cd jwt-cpp
mkdir build
cd build
cmake ..
make -j 8
sudo make install
cd ../..
wget https://dev.mysql.com/get/Downloads/Connector-C++/mysql-connector-c++-8.1.0-linux-glibc2.28-x86-64bit.tar.gz
tar zxvf mysql-connector-c++-8.1.0-linux-glibc2.28-x86-64bit.tar.gz 
mv mysql-connector-c++-8.1.0-linux-glibc2.28-x86-64bit mysql-connector
rm mysql-connector-c++-8.1.0-linux-glibc2.28-x86-64bit.tar.gz
mkdir build
./run.sh

API Documentation

See API.md for details on APIs for authentication, user management, documents, etc.

License

This project is licensed under the MIT License. See LICENSE for details.

Contact

For any questions, please reach out at 202202501110@email.sxu.edu.cn or 202201005113@email.sxu.edu.cn