add changes
This commit is contained in:
123
seeders/20251110192809-demo-categories.js
Normal file
123
seeders/20251110192809-demo-categories.js
Normal file
@@ -0,0 +1,123 @@
|
||||
'use strict';
|
||||
const { v4: uuidv4 } = require('uuid');
|
||||
|
||||
/** @type {import('sequelize-cli').Migration} */
|
||||
module.exports = {
|
||||
async up(queryInterface, Sequelize) {
|
||||
const categories = [
|
||||
{
|
||||
id: uuidv4(),
|
||||
name: 'JavaScript',
|
||||
slug: 'javascript',
|
||||
description: 'Core JavaScript concepts, ES6+, async programming, and modern features',
|
||||
icon: '🟨',
|
||||
color: '#F7DF1E',
|
||||
is_active: true,
|
||||
guest_accessible: true,
|
||||
question_count: 0,
|
||||
quiz_count: 0,
|
||||
display_order: 1,
|
||||
created_at: new Date(),
|
||||
updated_at: new Date()
|
||||
},
|
||||
{
|
||||
id: uuidv4(),
|
||||
name: 'Angular',
|
||||
slug: 'angular',
|
||||
description: 'Angular framework, components, services, RxJS, and state management',
|
||||
icon: '🅰️',
|
||||
color: '#DD0031',
|
||||
is_active: true,
|
||||
guest_accessible: true,
|
||||
question_count: 0,
|
||||
quiz_count: 0,
|
||||
display_order: 2,
|
||||
created_at: new Date(),
|
||||
updated_at: new Date()
|
||||
},
|
||||
{
|
||||
id: uuidv4(),
|
||||
name: 'React',
|
||||
slug: 'react',
|
||||
description: 'React library, hooks, component lifecycle, state management, and best practices',
|
||||
icon: '⚛️',
|
||||
color: '#61DAFB',
|
||||
is_active: true,
|
||||
guest_accessible: true,
|
||||
question_count: 0,
|
||||
quiz_count: 0,
|
||||
display_order: 3,
|
||||
created_at: new Date(),
|
||||
updated_at: new Date()
|
||||
},
|
||||
{
|
||||
id: uuidv4(),
|
||||
name: 'Node.js',
|
||||
slug: 'nodejs',
|
||||
description: 'Node.js runtime, Express, APIs, middleware, and server-side JavaScript',
|
||||
icon: '🟢',
|
||||
color: '#339933',
|
||||
is_active: true,
|
||||
guest_accessible: false,
|
||||
question_count: 0,
|
||||
quiz_count: 0,
|
||||
display_order: 4,
|
||||
created_at: new Date(),
|
||||
updated_at: new Date()
|
||||
},
|
||||
{
|
||||
id: uuidv4(),
|
||||
name: 'TypeScript',
|
||||
slug: 'typescript',
|
||||
description: 'TypeScript types, interfaces, generics, decorators, and type safety',
|
||||
icon: '📘',
|
||||
color: '#3178C6',
|
||||
is_active: true,
|
||||
guest_accessible: false,
|
||||
question_count: 0,
|
||||
quiz_count: 0,
|
||||
display_order: 5,
|
||||
created_at: new Date(),
|
||||
updated_at: new Date()
|
||||
},
|
||||
{
|
||||
id: uuidv4(),
|
||||
name: 'SQL & Databases',
|
||||
slug: 'sql-databases',
|
||||
description: 'SQL queries, database design, indexing, transactions, and optimization',
|
||||
icon: '🗄️',
|
||||
color: '#4479A1',
|
||||
is_active: true,
|
||||
guest_accessible: false,
|
||||
question_count: 0,
|
||||
quiz_count: 0,
|
||||
display_order: 6,
|
||||
created_at: new Date(),
|
||||
updated_at: new Date()
|
||||
},
|
||||
{
|
||||
id: uuidv4(),
|
||||
name: 'System Design',
|
||||
slug: 'system-design',
|
||||
description: 'Scalability, architecture patterns, microservices, and design principles',
|
||||
icon: '🏗️',
|
||||
color: '#FF6B6B',
|
||||
is_active: true,
|
||||
guest_accessible: false,
|
||||
question_count: 0,
|
||||
quiz_count: 0,
|
||||
display_order: 7,
|
||||
created_at: new Date(),
|
||||
updated_at: new Date()
|
||||
}
|
||||
];
|
||||
|
||||
await queryInterface.bulkInsert('categories', categories, {});
|
||||
console.log('✅ Seeded 7 demo categories');
|
||||
},
|
||||
|
||||
async down(queryInterface, Sequelize) {
|
||||
await queryInterface.bulkDelete('categories', null, {});
|
||||
console.log('✅ Removed demo categories');
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user