|
1 |
| -# Flypen |
2 |
| -c++ 课程设计作业 |
3 |
| -## Requirement |
4 |
| -### [Drogon](https://drogonframework.github.io/drogon-docs/#/CHN-01-%E6%A6%82%E8%BF%B0) |
5 |
| - |
6 |
| -Drogon是一个基于C++17/20的Http应用框架,使用Drogon可以方便的使用C++构建各种类型的Web应用服务端程序。 |
7 |
| -* Environment |
8 |
| - ``` |
9 |
| - sudo pacman -S gcc g++ cmake git |
10 |
| - ``` |
11 |
| - |
12 |
| -* jsoncpp |
13 |
| - ``` |
14 |
| - sudo pacman -S jsoncpp |
15 |
| - ``` |
16 |
| -* openssl |
17 |
| - ``` |
18 |
| - sudo pacman -S openssl |
19 |
| - ``` |
20 |
| -* Drogon Install |
21 |
| - ``` |
22 |
| - yay -S drogon |
23 |
| - ``` |
24 |
| -### MySQL |
25 |
| -``` |
26 |
| -sudo pacman -S mysql |
27 |
| -``` |
28 |
| -数据库表格样式为 |
29 |
| -| ID | username | password | createtime | |
30 |
| -| :-----| ----: | :----: | :----: | |
31 |
| -| 1 | sxdx-123456 | 123456 | 1234-5-6 | |
32 |
| -### [mysql-connecter-cpp](https://dev.mysql.com/downloads/connector/cpp/) |
33 |
| -```bash |
34 |
| -#下载 |
35 |
| -wget https://dev.mysql.com/get/Downloads/Connector-C++/mysql-connector-c++-8.1.0-linux-glibc2.28-x86-64bit-debug.tar.gz |
36 |
| -#可忽略相关文件已经包含在代码中 |
37 |
| -``` |
| 1 | +<p align="center"><a href="#"><img width="100" src="https://s2.loli.net/2023/09/22/WsZuGM3S49DA8we.jpg" alt="Python logo"></a></p> |
| 2 | +<h2 align="center">Flypen</h2> |
| 3 | +<p align="center"> |
| 4 | + <!-- <a href="https://travis-ci.com/github/ybygjylj/habits-apriori/"><img src="https://travis-ci.com/ybygjylj/habits-apriori.svg?branch=master" alt="Build Status"></a> --> |
| 5 | + <a href="https://raw.githubusercontent.com/ybygjylj/habits-apriori/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="LICENSE"></a> |
| 6 | + <a href="https://github.com/topics/cpp"><img src="https://img.shields.io/badge/language-c++-blue.svg" alt="languange"></a> |
| 7 | + <!-- <a href="https://gitter.im/habits-apriori/community"><img src="https://badges.gitter.im/Join%20Chat.svg" alt="chat"></a> --> |
| 8 | +</p> |
| 9 | + |
| 10 | +*Read this in other languages: [English](README.md), [简体中文](README.zh_Hans.md).* |
38 | 11 |
|
| 12 | +## C++ Course Design |
| 13 | +### An Office Collab Backend |
| 14 | +This is the Flypen C++ backend service for the Office Collab web application. |
39 | 15 |
|
40 |
| -## Install |
41 |
| -```bash |
42 |
| -git clone https://github.com/lglglglgy/flypen.git |
| 16 | +## Features |
| 17 | +- Real-time collaborative editing of documents |
| 18 | +- Chat and notifications |
| 19 | +- User management and access control |
| 20 | +- Document management and storage (markdown) |
| 21 | +## Architecture |
| 22 | +- Server application built with C++ drogon famework |
| 23 | +- MariaDB database for storage |
| 24 | +- REST APIs for client communication |
| 25 | +- Use MySQL Connector/C++ 8.1.0 connect database |
| 26 | +## Getting Started |
| 27 | + |
| 28 | +### Installing |
| 29 | + |
| 30 | +``` |
| 31 | +git clone https://github.com/stepbystepcode/flypen.git |
43 | 32 | cd flypen
|
44 |
| -export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/mysql-connector/lib64 |
| 33 | +git submodule update --init |
| 34 | +cd drogon |
| 35 | +git submodule update --init |
| 36 | +sudo apt install git gcc g++ cmake libjsoncpp-dev uuid-dev zlib1g-dev openssl libssl-dev |
45 | 37 | mkdir build
|
| 38 | +cd build |
46 | 39 | cmake ..
|
47 | 40 | make -j 8
|
48 |
| -./flypen |
| 41 | +sudo make install |
| 42 | +cd ../.. |
| 43 | +cd jwt-cpp |
| 44 | +mkdir build |
| 45 | +cd build |
| 46 | +cmake .. |
| 47 | +make -j 8 |
| 48 | +sudo make install |
| 49 | +cd ../.. |
| 50 | +wget https://dev.mysql.com/get/Downloads/Connector-C++/mysql-connector-c++-8.1.0-linux-glibc2.28-x86-64bit.tar.gz |
| 51 | +tar zxvf mysql-connector-c++-8.1.0-linux-glibc2.28-x86-64bit.tar.gz |
| 52 | +mv mysql-connector-c++-8.1.0-linux-glibc2.28-x86-64bit mysql-connector |
| 53 | +rm mysql-connector-c++-8.1.0-linux-glibc2.28-x86-64bit.tar.gz |
| 54 | +mkdir build |
| 55 | +./run.sh |
49 | 56 | ```
|
| 57 | +## API Documentation |
| 58 | +See API.md for details on APIs for authentication, user management, documents, etc. |
| 59 | + |
| 60 | +## Contributing |
| 61 | +See CONTRIBUTING.md for contribution guidelines. |
| 62 | + |
| 63 | +## License |
| 64 | +This project is licensed under the MIT License. See LICENSE for details. |
| 65 | + |
| 66 | +## Contact |
| 67 | +For any questions, please reach out at [email protected] |
0 commit comments