MyVocab Application Setup
Welcome to MyVocab! Follow these steps to set up your vocabulary learning application.
Database Setup Instructions
Before using the application, you need to set up the database with the provided schema.
-
Database Connection:
The application is configured to connect to:
Server=tcp:ieltsvocab.database.windows.net,1433;Initial Catalog=IELTSVocab1
-
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
-
OpenAI Configuration:
The application uses OpenAI API for AI-powered word generation. The API key is configured in appsettings.json.
-
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
Quick Start
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