Lexify is a desktop application designed to help users learn and manage vocabulary effectively. It combines the simplicity of a local desktop application with the functionality of cloud-based user synchronization.
Note
This is an course-design project for 2024 Fall Python Programming by student ID: 547a1ec97aff5d1cc4d5c510fcd126a8
, 344790860170dfd0e32af844eff9dac1
, 7f7948923fe752064204c07ee5e6524e
, c7ca6a04c927df019ffb5e48374635f7
(MD5 Hash).
-
Vocabulary Learning: Memorize and review words with customizable study plans.
-
User Accounts: Register, log in, and synchronize learning progress.
-
Predefined Libraries: Includes common word libraries such as TOEFL, GRE, and more. (Future support for Japanese word libraries, such as JLPT N1 - N5 is planned.)
-
Custom Libraries: Import external word lists and export them as printable PDFs or CSVs.
- Frontend: PySide6 for the desktop application.
- Backend: Flask for user authentication and data synchronization.
- Database: SQLite for local and server-side data storage, with SQLAlchemy ORM for managing data models and queries.
- Containerization: Docker for backend deployment.
frontend/
: Desktop application source code.backend/
: API and server-side logic.database/
: Database schema and initialization scripts, managed via SQLAlchemy.tests/
: Unit and integration tests.
Development and deployment instructions will be added as the project progresses.
Warning
As this is a course design project, please DO NOT make any pull request. If you have any suggestion with this project, please create an issue.
For more information, please contact [email protected].
Stay tuned for updates!