MyVocab Application Setup

Database Setup Instructions

Before using the application, you need to set up the database with the provided schema.

  1. Database Connection:

    The application is configured to connect to:

    Server=tcp:ieltsvocab.database.windows.net,1433;Initial Catalog=IELTSVocab1
  2. Run Database Schema:

    Execute the SQL script located at /Database/InitialSchema.sql on your SQL Server to create the required tables:

    • AspNetUsers (Identity tables)
    • VocabularyCollections
    • VocabularyWords
    • UserWordProgress
  3. OpenAI Configuration:

    The application uses OpenAI API for AI-powered word generation. The API key is configured in appsettings.json.

  4. Start Using the App:

    Once the database is set up, you can:

    • Register a new account
    • Create vocabulary collections
    • Add words manually or with AI assistance
    • Import words from CSV files
    • Track your learning progress
Feature Checklist
Technical Implementation
Backend Technologies
  • ASP.NET Core 8.0 (Razor Pages)
  • Entity Framework Core (Database First)
  • ASP.NET Core Identity
  • SQL Server Database
  • OpenAI API Integration
Frontend Technologies
  • Bootstrap 5
  • Bootstrap Icons
  • jQuery & jQuery Validation
  • Responsive Design
  • Modern UI Components
Architecture

The application follows Clean Architecture principles:

  • Models: Entity classes (ApplicationUser, VocabularyCollection, VocabularyWord, UserWordProgress)
  • Data: ApplicationDbContext with Entity Framework
  • Services: Business logic (VocabularyService, OpenAIService)
  • Controllers: API controllers for AJAX operations
  • Pages: Razor Pages for UI