init commit
This commit is contained in:
20
database/seeders/DatabaseSeeder.php
Normal file
20
database/seeders/DatabaseSeeder.php
Normal file
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
|
||||
namespace Database\Seeders;
|
||||
|
||||
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||
use Illuminate\Database\Seeder;
|
||||
|
||||
class DatabaseSeeder extends Seeder
|
||||
{
|
||||
/**
|
||||
* Seed the application's database.
|
||||
*/
|
||||
public function run(): void
|
||||
{
|
||||
$this->call([
|
||||
UserSeeder::class,
|
||||
ResumeSeeder::class,
|
||||
]);
|
||||
}
|
||||
}
|
||||
242
database/seeders/ResumeSeeder.php
Normal file
242
database/seeders/ResumeSeeder.php
Normal file
@@ -0,0 +1,242 @@
|
||||
<?php
|
||||
|
||||
namespace Database\Seeders;
|
||||
|
||||
use App\Models\User;
|
||||
use App\Models\Resume;
|
||||
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||
use Illuminate\Database\Seeder;
|
||||
|
||||
class ResumeSeeder extends Seeder
|
||||
{
|
||||
/**
|
||||
* Run the database seeds.
|
||||
*/
|
||||
public function run(): void
|
||||
{
|
||||
$admin = User::where('email', 'david@valera-melendez.de')->first();
|
||||
$demo = User::where('email', 'demo@example.com')->first();
|
||||
|
||||
if ($admin) {
|
||||
// Create admin's professional resume
|
||||
Resume::create([
|
||||
'user_id' => $admin->id,
|
||||
'title' => 'Senior Full-Stack Developer Resume',
|
||||
'description' => 'Professional resume showcasing expertise in Laravel, Angular, and enterprise software development.',
|
||||
'template' => 'executive',
|
||||
'content' => [
|
||||
'personal_info' => [
|
||||
'full_name' => 'David Valera Melendez',
|
||||
'title' => 'Senior Full-Stack Developer',
|
||||
'email' => 'david@valera-melendez.de',
|
||||
'phone' => '+49 123 456 7890',
|
||||
'location' => 'Germany',
|
||||
'website' => 'https://valera-melendez.de',
|
||||
'linkedin' => 'https://linkedin.com/in/david-valera-melendez',
|
||||
'github' => 'https://github.com/davidvalera',
|
||||
],
|
||||
'summary' => 'Experienced Senior Full-Stack Developer with 8+ years of expertise in enterprise web applications. Specialized in Laravel, Angular, and modern development practices. Proven track record of delivering scalable solutions for international clients.',
|
||||
'experience' => [
|
||||
[
|
||||
'company' => 'Tech Solutions GmbH',
|
||||
'position' => 'Senior Full-Stack Developer',
|
||||
'location' => 'Berlin, Germany',
|
||||
'start_date' => '2020-01-01',
|
||||
'end_date' => null,
|
||||
'current' => true,
|
||||
'description' => 'Lead development of enterprise web applications using Laravel, Angular, and microservices architecture. Mentor junior developers and establish best practices.',
|
||||
'achievements' => [
|
||||
'Architected and developed 5+ enterprise applications serving 100K+ users',
|
||||
'Reduced application load time by 60% through optimization techniques',
|
||||
'Led team of 6 developers on critical client projects',
|
||||
'Implemented CI/CD pipelines reducing deployment time by 80%'
|
||||
]
|
||||
],
|
||||
[
|
||||
'company' => 'Digital Innovation Ltd',
|
||||
'position' => 'Full-Stack Developer',
|
||||
'location' => 'Hamburg, Germany',
|
||||
'start_date' => '2018-06-01',
|
||||
'end_date' => '2019-12-31',
|
||||
'current' => false,
|
||||
'description' => 'Developed responsive web applications and REST APIs for various clients in e-commerce and fintech sectors.',
|
||||
'achievements' => [
|
||||
'Built e-commerce platform handling €2M+ monthly transactions',
|
||||
'Developed fintech dashboard with real-time analytics',
|
||||
'Improved code quality by implementing automated testing'
|
||||
]
|
||||
]
|
||||
],
|
||||
'education' => [
|
||||
[
|
||||
'institution' => 'Technical University of Berlin',
|
||||
'degree' => 'Master of Science in Computer Science',
|
||||
'field' => 'Software Engineering',
|
||||
'start_date' => '2014-09-01',
|
||||
'end_date' => '2016-07-31',
|
||||
'gpa' => '1.2',
|
||||
'description' => 'Specialized in software architecture, distributed systems, and web technologies.'
|
||||
],
|
||||
[
|
||||
'institution' => 'University of Applied Sciences',
|
||||
'degree' => 'Bachelor of Science in Information Technology',
|
||||
'field' => 'Web Development',
|
||||
'start_date' => '2011-09-01',
|
||||
'end_date' => '2014-07-31',
|
||||
'gpa' => '1.4',
|
||||
'description' => 'Foundation in programming, databases, and web development technologies.'
|
||||
]
|
||||
],
|
||||
'skills' => [
|
||||
'Backend Development' => ['Laravel', 'PHP', 'Node.js', 'Python', 'REST APIs', 'GraphQL'],
|
||||
'Frontend Development' => ['Angular', 'TypeScript', 'JavaScript', 'HTML5', 'CSS3', 'Bootstrap', 'Sass'],
|
||||
'Databases' => ['MySQL', 'PostgreSQL', 'MongoDB', 'Redis'],
|
||||
'DevOps & Tools' => ['Docker', 'AWS', 'Git', 'CI/CD', 'Linux', 'Nginx'],
|
||||
'Methodologies' => ['Agile', 'Scrum', 'TDD', 'Clean Code', 'Design Patterns']
|
||||
],
|
||||
'projects' => [
|
||||
[
|
||||
'name' => 'Enterprise Resume Builder',
|
||||
'description' => 'Professional resume builder application with Laravel backend and Angular frontend.',
|
||||
'technologies' => ['Laravel', 'Angular', 'Bootstrap', 'MySQL'],
|
||||
'url' => 'https://resume.valera-melendez.de',
|
||||
'achievements' => [
|
||||
'Built scalable architecture supporting 10K+ users',
|
||||
'Implemented real-time collaboration features',
|
||||
'Created PDF generation with custom templates'
|
||||
]
|
||||
],
|
||||
[
|
||||
'name' => 'E-commerce Platform',
|
||||
'description' => 'Full-featured e-commerce solution with inventory management and payment processing.',
|
||||
'technologies' => ['Laravel', 'Vue.js', 'PostgreSQL', 'Stripe'],
|
||||
'achievements' => [
|
||||
'Processed €5M+ in transactions',
|
||||
'Integrated multiple payment gateways',
|
||||
'Built admin dashboard with analytics'
|
||||
]
|
||||
]
|
||||
],
|
||||
'certifications' => [
|
||||
[
|
||||
'name' => 'AWS Certified Solutions Architect',
|
||||
'issuer' => 'Amazon Web Services',
|
||||
'date' => '2023-03-15',
|
||||
'credential_id' => 'AWS-SA-12345',
|
||||
'url' => 'https://aws.amazon.com/certification/'
|
||||
],
|
||||
[
|
||||
'name' => 'Laravel Certified Developer',
|
||||
'issuer' => 'Laravel',
|
||||
'date' => '2022-08-20',
|
||||
'credential_id' => 'LRV-DEV-67890'
|
||||
]
|
||||
],
|
||||
'languages' => [
|
||||
['language' => 'German', 'level' => 'Native'],
|
||||
['language' => 'English', 'level' => 'Fluent'],
|
||||
['language' => 'Spanish', 'level' => 'Intermediate'],
|
||||
]
|
||||
],
|
||||
'settings' => [
|
||||
'color_scheme' => 'blue',
|
||||
'font_family' => 'Arial',
|
||||
'font_size' => 11,
|
||||
'line_spacing' => 1.2,
|
||||
'margin' => 20,
|
||||
'show_photo' => false,
|
||||
'section_order' => ['summary', 'experience', 'education', 'skills', 'projects', 'certifications', 'languages']
|
||||
],
|
||||
'status' => 'published',
|
||||
'is_public' => true,
|
||||
'public_url' => 'david-valera-melendez-senior-developer',
|
||||
'published_at' => now(),
|
||||
'completion_percentage' => 100,
|
||||
'completion_sections' => [
|
||||
'personal_info' => true,
|
||||
'summary' => true,
|
||||
'experience' => true,
|
||||
'education' => true,
|
||||
'skills' => true,
|
||||
'projects' => true,
|
||||
'certifications' => true,
|
||||
'languages' => true
|
||||
]
|
||||
]);
|
||||
}
|
||||
|
||||
if ($demo) {
|
||||
// Create demo user's resume
|
||||
Resume::create([
|
||||
'user_id' => $demo->id,
|
||||
'title' => 'My Professional Resume',
|
||||
'description' => 'Demo resume for testing the application features.',
|
||||
'template' => 'modern',
|
||||
'content' => [
|
||||
'personal_info' => [
|
||||
'full_name' => 'Demo User',
|
||||
'title' => 'Software Developer',
|
||||
'email' => 'demo@example.com',
|
||||
'phone' => '+1 555 123 4567',
|
||||
'location' => 'New York, USA',
|
||||
],
|
||||
'summary' => 'Passionate software developer with experience in web development and modern frameworks.',
|
||||
'experience' => [
|
||||
[
|
||||
'company' => 'Example Corp',
|
||||
'position' => 'Junior Developer',
|
||||
'location' => 'New York, USA',
|
||||
'start_date' => '2022-01-01',
|
||||
'end_date' => null,
|
||||
'current' => true,
|
||||
'description' => 'Developing web applications and learning new technologies.',
|
||||
'achievements' => [
|
||||
'Built responsive web interfaces',
|
||||
'Collaborated with senior developers',
|
||||
'Participated in code reviews'
|
||||
]
|
||||
]
|
||||
],
|
||||
'education' => [
|
||||
[
|
||||
'institution' => 'State University',
|
||||
'degree' => 'Bachelor of Science',
|
||||
'field' => 'Computer Science',
|
||||
'start_date' => '2018-09-01',
|
||||
'end_date' => '2022-05-31',
|
||||
'gpa' => '3.8'
|
||||
]
|
||||
],
|
||||
'skills' => [
|
||||
'Programming' => ['JavaScript', 'Python', 'Java'],
|
||||
'Web Development' => ['HTML', 'CSS', 'React', 'Node.js'],
|
||||
'Tools' => ['Git', 'VS Code', 'Docker']
|
||||
]
|
||||
],
|
||||
'settings' => [
|
||||
'color_scheme' => 'green',
|
||||
'font_family' => 'Arial',
|
||||
'font_size' => 10,
|
||||
'section_order' => ['summary', 'experience', 'education', 'skills']
|
||||
],
|
||||
'status' => 'draft',
|
||||
'completion_percentage' => 75,
|
||||
'completion_sections' => [
|
||||
'personal_info' => true,
|
||||
'summary' => true,
|
||||
'experience' => true,
|
||||
'education' => true,
|
||||
'skills' => true
|
||||
]
|
||||
]);
|
||||
}
|
||||
|
||||
// Create additional test resumes
|
||||
$users = User::all();
|
||||
foreach ($users as $user) {
|
||||
if (!in_array($user->email, ['david@valera-melendez.de', 'demo@example.com'])) {
|
||||
Resume::factory()->create(['user_id' => $user->id]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
66
database/seeders/UserSeeder.php
Normal file
66
database/seeders/UserSeeder.php
Normal file
@@ -0,0 +1,66 @@
|
||||
<?php
|
||||
|
||||
namespace Database\Seeders;
|
||||
|
||||
use App\Models\User;
|
||||
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||
use Illuminate\Database\Seeder;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class UserSeeder extends Seeder
|
||||
{
|
||||
/**
|
||||
* Run the database seeds.
|
||||
*/
|
||||
public function run(): void
|
||||
{
|
||||
// Create admin user
|
||||
User::create([
|
||||
'first_name' => 'David',
|
||||
'last_name' => 'Valera Melendez',
|
||||
'email' => 'david@valera-melendez.de',
|
||||
'email_verified_at' => now(),
|
||||
'password' => Hash::make('password123'),
|
||||
'phone' => '+49 123 456 7890',
|
||||
'bio' => 'Senior Full-Stack Developer and Enterprise Software Architect specializing in Laravel, Angular, and modern web technologies.',
|
||||
'website' => 'https://valera-melendez.de',
|
||||
'linkedin' => 'https://linkedin.com/in/david-valera-melendez',
|
||||
'github' => 'https://github.com/davidvalera',
|
||||
'preferences' => [
|
||||
'theme' => 'professional',
|
||||
'language' => 'en',
|
||||
'notifications' => true,
|
||||
'marketing_emails' => false,
|
||||
],
|
||||
'newsletter_subscribed' => false,
|
||||
'status' => 'active',
|
||||
'locale' => 'en',
|
||||
'timezone' => 'Europe/Berlin',
|
||||
'profile_completed_at' => now(),
|
||||
]);
|
||||
|
||||
// Create demo user
|
||||
User::create([
|
||||
'first_name' => 'Demo',
|
||||
'last_name' => 'User',
|
||||
'email' => 'demo@example.com',
|
||||
'email_verified_at' => now(),
|
||||
'password' => Hash::make('demo123'),
|
||||
'bio' => 'Demo user for testing the resume builder application.',
|
||||
'preferences' => [
|
||||
'theme' => 'modern',
|
||||
'language' => 'en',
|
||||
'notifications' => true,
|
||||
'marketing_emails' => true,
|
||||
],
|
||||
'newsletter_subscribed' => true,
|
||||
'status' => 'active',
|
||||
'locale' => 'en',
|
||||
'timezone' => 'UTC',
|
||||
'profile_completed_at' => now(),
|
||||
]);
|
||||
|
||||
// Create additional test users
|
||||
User::factory(10)->create();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user