Implemented a feature enabling users to acquire knowledge, practice, monitor language proficiency, and assess their learning progress through our platform. During registration, users can initially select their native and targeted languages to prioritize different language learning. While the targeted language can be modified, the native language remains fixed.
The website comprises three distinct sections: Stories, Flashcards, and Lesson Notebook. These sections are organized into separate collections, both new and existing, to maintain clarity and accessibility. Redux serves as the content management system, storing all displayed content and essential information for user interaction. Material UI facilitates the website’s design, while Axios facilitates data retrieval from the backend and presentation on the frontend.
The Content Marketplace provides access to a diverse range of language-related content, customizable based on the user’s selected language. Users can copy entire collections or individual items such as Stories, Flashcards, or Lesson Notebooks. Copied content remains independent of the original, ensuring that changes or deletions to the original do not affect the copied content.
To enhance user experience and facilitate content retrieval, Redux is employed to store language-specific information and filters. Material-UI (MUI) is utilized for design purposes. State management through Redux enables efficient handling of sub-admin sections, enhancing edit functionality and overall task management.
Django serves as the backend, storing published or draft content in the database to facilitate future actions.
Sub-admins are roles associated with the primary administrator. Sub-admins possess the capability to create publicly accessible content visible to all users on the “Content Marketplace” page. Sub-admins have the option to create content in any language and can modify or delete content from the content marketplace. If they are currently working on content, they can publish it in draft mode. To enhance the sub-admin sections and optimize edit functionality, I am utilizing state management and Redux. For design purposes, Material-UI (MUI) is employed. The backend is implemented using Django, which stores published or draft content in the database to facilitate future actions.