Меняйте свой password в server/server.js
npm start
Runs the app in the development mode.
Open http://localhost:3000 to view it in your browser.
Шаги устаовки:
- Качаем MySQL с оффсайта (который 300мб).
- Config type - Development Computer. (порт можно оставить 3306, но вообще вроде 5001)
- Если там где-то спросит для разработчика или пользователя ставим что типа мы крутые разрабы и то и то.
- Остальное далее-далее, пароль для root можно поставить root.
Далее:
- Windows > Настройки > ищем в поиске "переменные" > изменить переменные среды
- Переменные среды > Системные переменные и ищем там Path > Нажимаем изменить
- Нажимаем создать и прописываем C:\Program Files\MySQL\MySQL Server 8.0\bin\ или другой путь где у вас лежит
mysql.exe
Теперь mysql можно использовать в любой cli и IDE. Иногда надо перезапустить прогу или перезагрузиться.
Запускаем сервер командой ниже, при необходимости обновляем зависимости (npm install)
node server/server.js
Если мешается, то можно DROP DATABASE лишняя_база_данных.
- Пишем в консоли
mysql -u root -p
или без пароляmysql -u root
- Код ниже
CREATE DATABASE practice_system;
USE practice_system;
CREATE TABLE students (
id INT AUTO_INCREMENT PRIMARY KEY,
email VARCHAR(100) UNIQUE NOT NULL,
login VARCHAR(30) NOT NULL,
password_hash VARCHAR(255) NOT NULL,
student_id INT UNIQUE,
first_name VARCHAR(50),
last_name VARCHAR(50),
patronimycal VARCHAR(50),
phone VARCHAR(20) UNIQUE,
date_of_birth DATE,
gender ENUM('Male', 'Female'),
education_level VARCHAR(50),
registration_date DATETIME DEFAULT CURRENT_TIMESTAMP,
status ENUM('Active', 'Inactive')
);
CREATE TABLE companies (
id INT AUTO_INCREMENT PRIMARY KEY,
email VARCHAR(100) UNIQUE NOT NULL,
login VARCHAR(30) NOT NULL,
password_hash VARCHAR(255) NOT NULL,
company_name VARCHAR(100),
registration_number VARCHAR(20) UNIQUE,
contact_person VARCHAR(100),
phone VARCHAR(20) UNIQUE,
address VARCHAR(255),
industry VARCHAR(100),
website VARCHAR(255),
status ENUM('Active', 'Inactive')
);
CREATE TABLE universities (
id INT AUTO_INCREMENT PRIMARY KEY,
email VARCHAR(100) UNIQUE NOT NULL,
login VARCHAR(30) NOT NULL,
password_hash VARCHAR(255) NOT NULL,
university_name VARCHAR(100),
contact_person VARCHAR(100),
phone VARCHAR(20) UNIQUE,
address VARCHAR(255),
website VARCHAR(255)
);
CREATE TABLE practice (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
description TEXT,
start_date DATE NOT NULL,
end_date DATE NOT NULL,
salary DECIMAL(10, 2),
places INT NOT NULL,
image_data LONGBLOB,
university VARCHAR(100) NOT NULL,
link_university VARCHAR(255) NOT NULL,
company VARCHAR(100) NOT NULL,
link_company VARCHAR(255) NOT NULL,
industry VARCHAR(100) NOT NULL,
employmentType VARCHAR(50) NOT NULL,
education VARCHAR(50) NOT NULL,
internshipFormat VARCHAR(50) NOT NULL
);
CREATE TABLE practice_offer (
offer_id INT AUTO_INCREMENT PRIMARY KEY,
practice_id INT NOT NULL,
company_id INT NOT NULL,
salary DECIMAL(10, 2) NOT NULL,
start_date DATE NOT NULL,
end_date DATE NOT NULL,
status ENUM('Отправлено', 'Принято', 'Отклонено') NOT NULL,
date_of_application DATETIME DEFAULT CURRENT_TIMESTAMP,
student_id INT NOT NULL,
FOREIGN KEY (student_id) REFERENCES students(id),
FOREIGN KEY (company_id) REFERENCES companies(id),
FOREIGN KEY (practice_id) REFERENCES practice(id)
);
CREATE TABLE admins (
id INT AUTO_INCREMENT PRIMARY KEY,
email VARCHAR(100) UNIQUE NOT NULL,
login VARCHAR(30) UNIQUE NOT NULL,
password_hash VARCHAR(255) NOT NULL
);
Заполним тестовые данные:
INSERT INTO practice (
name, description, start_date, end_date, salary, places, image_data, university, link_university, company, link_company, industry, employmentType, education, internshipFormat
) VALUES
("Младший разработчик", "Участие в разработке веб-приложений с использованием Python и JavaScript в команде опытных разработчиков. Стажер будет знакомиться с современными методологиями разработки, работать с системами контроля версий и участвовать в планировании задач. Практика подходит для студентов IT-специальностей, желающих погрузиться в реальные проекты.", "2024-11-01", "2025-01-31", 30000, 3, NULL, "Уральский Федеральный Университет", "https://urfu.ru/ru/", "IT Solutions Inc.", "https://www.itsolutions.co.uk", "Информационные технологии, системная интеграция, интернет", "Полная занятость", "Высшее", "Очно"),
("Специалист по тестированию", "Проведение функционального и регрессионного тестирования программного обеспечения, работа с баг-трекинговыми системами. Стажер будет разрабатывать тестовые сценарии, анализировать результаты тестирования и взаимодействовать с командой разработчиков для улучшения качества продукта. Подходит для студентов, стремящихся к карьере в QA.", "2024-12-01", "2025-02-28", 25000, 5, NULL, "Высшая школа экономики", "https://www.hse.ru", "Tech Quality Group", "https://www.tqg.de/en/", "Информационные технологии, системная интеграция, интернет", "Полная занятость", "Высшее", "Дистанционно"),
("Аналитик данных", "Сбор, обработка и анализ больших объемов данных для бизнес-решений. Стажер будет использовать инструменты Excel, SQL и Python для обработки информации, создание отчетов и визуализации данных. Практика предназначена для студентов, заинтересованных в аналитике и работе с данными.", "2024-11-15", "2025-02-15", 35000, 10, NULL, "Уральский Федеральный Университет", "https://urfu.ru/ru/", "Data Insights Ltd.", "https://find-and-update.company-information.service.gov.uk/company/12829078", "Информационные технологии, системная интеграция, интернет", "Неполная занятость", "Высшее", "Дистанционно"),
("Аналитик данных", "Поддержка и администрирование IT-инфраструктуры компании, включая настройку серверов, управление сетевым оборудованием и решение инцидентов. Стажер будет учиться обеспечивать бесперебойную работу систем и сети, а также взаимодействовать с пользователями для устранения проблем.", "2024-10-01", "2024-12-30", 40000, 10, NULL, "Московский физико-технический институт", "https://mipt.ru", "Reliable Systems", "https://www.linkedin.com/company/reliable-systems", "Информационные технологии, системная интеграция, интернет", "Полная занятость", "Высшее", "Очно"),
("UX/UI дизайнер", "Проектирование пользовательских интерфейсов и взаимодействия для веб- и мобильных приложений. Стажер будет работать над созданием прототипов, проводить пользовательские тестирования и вносить изменения на основе отзывов пользователей. Практика подойдёт для креативных студентов с интересом к дизайну и пользовательскому опыту.", "2024-11-01", "2025-01-28", NULL, 7, NULL, "Екатеринбургская академия современного искусства", "https://еаси.екатеринбург.рф", "Creative Design Studio", "https://find-and-update.company-information.service.gov.uk/company/12829078", "Информационные технологии, системная интеграция, интернет", "Полная занятость", "Высшее", "Дистанционно"),
("Ассистент аналитика", "Помощь в подготовке финансовых отчетов, анализ данных и исследование рынка. Стажер будет заниматься сбором информации, анализом данных и подготовкой презентаций для команды. Эта практика поможет развить навыки аналитического мышления и глубокого понимания", "2024-11-01", "2025-01-31", 25000, 10, NULL, "Уральский Федеральный Университет", "https://urfu.ru/ru/", "Finance Analytics Corp.", "https://find-and-update.company-information.service.gov.uk/company/12829078", "Финансовый сектор", "Полная занятость", "Высшее", "Дистанционно"),
("Специалист по кредитованию", "Оценка кредитных заявок и консультирование клиентов по вопросам кредитования. Стажер будет анализировать финансовые документы, оценивать риски и принимать участие в процессе выдачи кредитов. Эта практика подойдёт для студентов, желающих развить свои навыки в области кредитного анализа и работы с клиентами.", "2024-12-01", "2025-02-28", 30000, 15, NULL, "Уральский Государственный Экономический Университет", "https://www.usue.ru", "Credit Solutions Group", "https://creditsolutions.ru", "Финансовый сектор", "Полная занятость", "Высшее", "Дистанционно"),
("Бухгалтер-стажер", "Ведение бухгалтерского учета, работа с первичной документацией и участие в составлении финансовых отчетов. Стажер будет осваивать программы для учета и научится проводить инвентаризацию. Практика идеальна для студентов, желающих углубиться в бухгалтерский учет и финансовую отчетность.", "2024-11-15", "2025-02-15", 20000, 5, NULL, "Уральский Государственный Экономический Университет", "https://www.usue.ru", "Accounting Solutions Ltd.", "https://accountingsolutions.ru", "Финансовый сектор", "Неполная занятость", "Высшее", "Очно"),
("Финансовый консультант", "Консультирование клиентов по вопросам инвестиций, сбережений и финансового планирования. Стажер будет помогать в подготовке индивидуальных финансовых планов и участвовать в встречах с клиентами. Практика предназначена для студентов, интересующихся финансовыми услугами и клиентским обслуживанием.", "2024-10-01", "2024-12-30", NULL, 12, NULL, "Уральский Федеральный Университет", "https://urfu.ru/ru/", "Financial Advisory Group", "https://accountingsolutions.ru", "Финансовый сектор", "Неполная занятость", "Среднее профессиональное", "Очно"),
("Специалист по налогам", "Подготовка налоговых деклараций, анализ налоговых обязательств и консультирование по налоговым вопросам. Стажер будет изучать налоговое законодательство и применять его на практике. Эта практика подойдёт для студентов, желающих развить навыки в налоговом учете и консультировании.", "2024-11-01", "2025-01-28", 30000, 8, NULL, "Уральский Государственный Экономический Университет", "https://www.usue.ru", "Tax Consulting Services", "https://taxconsulting.ru", "Финансовый сектор", "Неполная занятость", "Высшее", "Дистанционно"),
("Журналист-стажер", "Подготовка и написание материалов для новостных публикаций, работа с источниками информации и проведение интервью. Стажер будет изучать основы журналистского мастерства, учиться формировать и представлять актуальные темы. Практика идеально подходит для студентов, желающих развить свои навыки в журналистике и коммуникации.", "2024-11-01", "2025-01-31", 30000, 8, NULL, "Уральский Федеральный Университет", "https://urfu.ru/ru/", "News Agency Ural", "https://newsural.ru", "СМИ, маркетинг, реклама, BTL, PR, дизайн, продюсирование", "Неполная занятость", "Высшее", "Дистанционно"),
("Редактор контента", "Проверка и редактирование материалов перед публикацией, работа с журналистами и создание редакционных планов. Стажер будет разрабатывать стандарты качества для контента и анализировать реакции аудитории. Практика подойдет для студентов, заинтересованных в медиапроизводстве и редактур.", "2024-12-01", "2025-02-28", NULL, 3, NULL, "Уральский Федеральный Университет", "https://urfu.ru/ru/", "Media House Ural", "https://mediahouse.ru", "СМИ, маркетинг, реклама, BTL, PR, дизайн, продюсирование", "Неполная занятость", "Среднее профессиональное", "Очно"),
("Копирайтер", "Написание статей, пресс-релизов и контента для социальных сетей. Стажер будет заниматься разработкой креативных идей и написанием текстов, соответствующих редакционным стандартам. Практика идеальна для студентов, стремящихся развить свои навыки в копирайтинге и контент-маркетинге.", "2024-11-15", "2025-02-15", 20000, 2, NULL, "Уральский Федеральный Университет", "https://urfu.ru/ru/", "Creative Media Group", "https://creativemedia.ru", "СМИ, маркетинг, реклама, BTL, PR, дизайн, продюсирование", "Неполная занятость", "Высшее", "Дистанционно"),
("Фотограф", "Съемка событий, интервью и создание фотоматериалов для новостей. Стажер будет развивать свои навыки в фотографии, учиться работать с фотоаппаратом и постобработкой изображений. Практика подходит для студентов, заинтересованных в визуальной журналистике.", "2024-10-01", "2024-12-30", 20000, 3, NULL, "Уральский Федеральный Университет", "https://urfu.ru/ru/", "Photo Journal", "https://photojournal.ru", "СМИ, маркетинг, реклама, BTL, PR, дизайн, продюсирование", "Полная занятость", "Высшее", "Очно"),
("Специалист по PR", "Разработка и реализация PR-кампаний, взаимодействие с медиа и управление репутацией компании. Стажер будет участвовать в создании пресс-релизов и анализе эффективности PR-акций. Практика подойдёт для студентов, желающих углубить свои знания в области PR и связей с общественностью.", "2024-11-01", "2025-01-28", 50000, 2, NULL, "Уральский Федеральный Университет", "https://pragencyural.ru", "PR Agency Ural", "https://photojournal.ru", "СМИ, маркетинг, реклама, BTL, PR, дизайн, продюсирование", "Полная занятость", "Высшее", "Очно");
- Проверить что все ок -
SHOW DATABASES
. Будет 7 включая нашу.
По сути все. Удобнее сделать три консоли:
- консоль для mysql локально
- консоль для webserver 3000
- консоль для MySQL server 5001
- Открываем файлик
.env.example
это пример как заполнять свой.env
- Создаем свой
.env
в КОРНЕВОЙ ПАПКЕ с вашими настройками БД - Не пушим
.env
в git если предложит