Skip to content

RequiemBit/FlashForge-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Overview

This project is a high-performance C++-based web server that supports core features such as user registration/login, deck (question set) management, and flashcard-based learning. Users can create and manage private decks, browse public decks provided by the system or community, and copy them into their personal space for study. The system follows a frontend-backend separation architecture: the frontend uses HTML and JavaScript for interactive UI, while the backend provides RESTful APIs and integrates with a MySQL-compatible database (e.g., TiDB Cloud) to ensure data persistence and consistency.


Version Changelog

v4.2.2

  • Fixed an issue where users with no existing decks couldn't create a new deck, ensuring first-time users can successfully create their initial deck.

v4.2.1

  • Fixed a data inconsistency bug where deleting a deck did not remove its associated cards, ensuring complete cleanup.

v4.2.0

  • Completed a major architectural upgrade to improve stability and maintainability.
  • Added support for high-concurrency requests and eliminated resource leaks.
  • Optimized routing logic and improved frontend loading behavior to prevent UI/data mismatches.

v4.1.2

  • Introduced public decks: users can now browse system-provided shared decks.
  • Added one-click copy-to-personal-space functionality for public decks.
  • Standardized the number of cards drawn for study to 10 across all decks.
  • Enhanced the tab-switching experience and preserved the user’s last viewed tab using local storage.

v4.1.1

  • Added a dedicated study page, allowing users to start learning directly from the deck list.

v4.1.0

  • Implemented full deck and card management capabilities:
    • Create, edit, and delete decks.
    • Add, edit, and delete individual flashcards within a deck.
    • Provided a deck homepage and an editor page with search and management features.

v4.0.0

  • Integrated a database to enable user registration and login.
  • Enabled JSON-based API interactions and established a foundational MVC architecture.
  • Upgraded the frontend to support seamless AJAX operations without page refreshes.

v3.2.0

  • Integrated a professional logging system with multi-level log control, colored console output, and automatic log file rotation.

v3.1.0

  • Added connection keep-alive and timeout disconnection mechanisms to enhance server robustness.

v3.0.0

  • Upgraded to a multi-threaded Reactor architecture, significantly boosting concurrency—achieving over 110,000 requests per second in benchmark tests.

v2.2.0

  • Refactored the network connection layer by decoupling listening and communication logic for better code maintainability.

v2.1.0

  • Added support for serving static resources (HTML, CSS, images, etc.), enabling direct browser access to web pages.

v2.0.1

  • Adopted the standard Reactor event-driven model to decouple I/O handling logic.

v2.0.0

  • Evolved from an echo server to a full HTTP-compliant web server capable of returning HTML pages.

v1.1.0

  • Introduced a high-performance I/O buffer to properly handle TCP packet fragmentation (sticky/split packets).

v1.0.0

  • Project initialized with a basic Epoll-based TCP echo server and development environment setup.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published