Skip to content

mateus-dev-me/study_async

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 About the Project

Python Version Django Version HTML Version CSS Version

This project was developed during PSW 9.0 by Pythonando. It is a study-focused application that uses flashcards, allowing users to create cards to review and strengthen their knowledge on various topics.

🔗 Table of Contents

  1. Access the Application
  2. Features
  3. Requirements
  4. Application Preview
  5. How to Run the Project
  6. Future Testing

🌐 Access the Application

The project is deployed and accessible at: studyasync.mateus-dev-me.com.br

🚀 Features

  • Create flashcards for different subjects.
  • Challenge mode to test your knowledge.
  • Reports to track performance.

⚙️ Requirements

  • Python: 3.10 or higher.
  • Poetry: Python dependency manager.

🖼️ Application Preview

Here are some screenshots of the application in action:

  • Login Screen
    Login

  • User Registration
    Registration

  • Flashcards List
    Flashcards

  • Start Challenge
    Start Challenge

  • Challenge Mode
    Challenge

🔧 How to Run the Project

Follow these steps to set up and run the project locally:

  1. Install Dependencies
    Install the project dependencies in a virtual environment:

    poetry install
  2. Activate the Virtual Environment
    Activate the virtual environment created by Poetry:

    poetry shell
  3. Run the Application
    Start the application with the following command:

    task run

Once the server is running, you can access the application in your browser at http://localhost:8000.

🧬 Future Testing

To ensure the quality and reliability of the application, testing will be implemented in future updates. The planned testing framework and strategy include:

  1. Testing Framework
    The application will use Pytest for writing and running test cases. Additional plugins like pytest-django will be used for Django-specific tests.

  2. Testing Levels

    • Unit Tests: To verify individual components such as models, views, and utility functions.
    • Integration Tests: To ensure components work seamlessly together (e.g., views and templates).
    • End-to-End (E2E) Tests: To test the entire user flow using tools like Selenium or Playwright.
  3. How to Run Tests
    Once tests are implemented, you will be able to run them using:

    pytest
  4. Continuous Integration
    CI pipelines will be configured (e.g., using GitHub Actions) to run tests automatically on every push or pull request.

  5. Testing To-Do List
    Below are the specific components that will be tested:

    Core

    • Models
    • Views

    Users

    • Models
    • Views

    Flashcards

    • Models
    • Views

    Challenges

    • Models
    • Views

    Books

    • Models
    • Views

    Reports

    • Models
    • Views

Stay tuned for updates as we enhance the project's testing capabilities! 🚀

About

Study/memorisation system based on flashcards.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published