English Memory is a web application designed to help users learn and review English vocabulary effectively. It features a spaced repetition system for optimal learning and retention.
- Vocabulary Management: Add new words/phrases with translations and audio pronunciations
- Smart Review System: Built-in spaced repetition system for efficient learning
- Progress Tracking: Track your learning progress with detailed statistics
- Audio Support: Add and play pronunciation audio for better learning
- Responsive Design: Works seamlessly on both desktop and mobile devices
- Frontend: Next.js 15, React 19, TailwindCSS
- Backend: Next.js API Routes
- Database: SQLite with Prisma ORM
- UI Components: Radix UI, Recharts for statistics visualization
- Node.js (Latest LTS version recommended)
- npm or yarn package manager
- Clone the repository:
git clone <repository-url>
cd english-memory
- Install dependencies:
npm install
- Set up the database:
npx prisma migrate deploy
- Start the development server:
npm run dev
The application will be available at http://localhost:3000
id
: String (Primary Key)text
: String (The word or phrase)translation
: StringaudioUrl
: String (Optional)createdAt
: DateTimeupdatedAt
: DateTime
id
: String (Primary Key)vocabularyId
: String (Foreign Key)status
: String ("mastered", "familiar", "forgotten")reviewedAt
: DateTimenextReviewDate
: DateTimecreatedAt
: DateTimeupdatedAt
: DateTime
-
Adding New Words:
- Click on "New" in the sidebar
- Enter the word/phrase and its translation
- Optionally upload pronunciation audio
- Click "Add Vocabulary"
-
Reviewing Words:
- Click on "Review" in the sidebar
- Rate your familiarity with each word (Mastered/Familiar/Forgotten)
- The system will schedule future reviews based on your ratings
-
Tracking Progress:
- Visit the "Statistics" page to view your learning progress
- See total words, mastery levels, and review history
This application can be easily deployed on Vercel. For deployment:
- Push your code to a Git repository
- Connect your repository to Vercel
- Configure environment variables if needed
- Deploy
For other deployment options, refer to the Next.js deployment documentation.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.