import type { JSXElement } from 'solid-js'; import flexpatrolPreview from '../../assets/projects/flexpatrolPreview.png'; import gamesPreview from '../../assets/projects/gamesPreview.png'; import warframePreview from '../../assets/projects/warframePreview.png'; import worktimePreview from '../../assets/projects/worktimePreview.png'; import studybuddyPreview from '../../assets/projects/studybuddyPreview.png'; import mockupPreview from '../../assets/projects/mockupPreview.png'; import vkmutePreview from '../../assets/projects/vkmutePreview.png'; import musanthropePreview from '../../assets/projects/musanthropePreview.png'; import RecursivePreview from './RecursivePreview'; import { Icon, npm, extension, pwa, github } from './iconList'; export class Project { name: string; preview: string | (() => JSXElement); link: string; repo?: string; npm?: string; descriptionSlug: string; previewStyle?: string; halfWidth?: boolean; icons?: Icon[]; constructor(project: Project) { this.name = project.name this.preview = project.preview this.link = project.link this.repo = project.repo this.npm = project.npm this.descriptionSlug = project.descriptionSlug this.previewStyle = project.previewStyle this.halfWidth = project.halfWidth this.icons = project.icons } } export default [ // new Project({ // name: 'Warframe Center', // preview: warframePreview, // link: 'https://warframe.center', // descriptionSlug: 'warframe_desc' // }), new Project({ name: 'Worktime', preview: worktimePreview, link: 'https://anatolykopyl.github.io/worktime', repo: 'https://github.com/anatolykopyl/worktime', descriptionSlug: 'worktime_desc', icons: [ pwa, github ] }), new Project({ name: 'This website', preview: RecursivePreview, link: 'https://kopyl.dev', descriptionSlug: 'this_desc' }), new Project({ name: 'VK Mute', preview: vkmutePreview, link: 'https://chrome.google.com/webstore/detail/vk-mute/mcnkfnjggkbenehgfelnnkklpkpjeibl', repo: 'https://github.com/anatolykopyl/vk-mute', descriptionSlug: 'vkmute_desc', halfWidth: true, icons: [ extension, github ] }), new Project({ name: 'Vue 3D Mockup', preview: mockupPreview, link: 'https://anatolykopyl.github.io/vue-three-d-mockup/', repo: 'https://github.com/anatolykopyl/vue-three-d-mockup', npm: 'https://www.npmjs.com/package/vue-three-d-mockup', descriptionSlug: 'mockup_desc', halfWidth: true, icons: [ npm, github ] // previewStyle: 'position: absolute; height: 50%;' }), new Project({ name: 'Musanthrope X PAYDAY 2', preview: musanthropePreview, link: 'https://musanthrope.kopyl.dev', descriptionSlug: 'musanthrope_desc' }), new Project({ name: 'Kopyl Games', preview: gamesPreview, link: 'https://games.anatolykopyl.ru', descriptionSlug: 'games_desc', }), // new Project({ // name: 'Studybuddy', // preview: studybuddyPreview, // link: 'https://studybuddy.top', // descriptionSlug: 'studybuddy_desc' // }), // new Project({ // name: 'flexpatrol.ru', // preview: flexpatrolPreview, // link: 'https://flexpatrol.ru', // descriptionSlug: 'flexpatrol_desc' // }), ]