export const KEYWORDS = { BACKEND: [ 'node.js', 'nestjs', 'nest.js', 'go', '.net', 'asp.net', 'java', 'express', 'django', 'laravel', 'php', ], LANGUAGES: [ 'typescript', 'javascript', 'python', 'java', 'c#', 'c++', 'c', 'php', 'ruby', 'go', 'kotlin', 'swift', 'objective-c', ], ORM: ['typeorm', 'prisma', 'sequelize', 'drizzle'], get FRONTEND() { return [ ...this.FRONTEND_FRAMEWORK, ...this.STYLES, ...this.STATE_MANAGEMENT, ...this.TESTING, 'fsd', ] }, FRONTEND_FRAMEWORK: [ 'html', 'nuxt', 'react', 'remix', 'angular', 'vue', 'jquery', 'svelte', 'nextjs', 'next.js', ], STYLES: ['css', 'sass', 'tailwind', 'styled-components', 'material ui', 'mui', 'bootstrap'], STATE_MANAGEMENT: [ 'redux', 'rtk', 'redux toolkit', 'redux toolkit query', 'effector', 'react-query', 'mobx', ], DATABASES: ['mysql', 'postgres', 'mongodb', 'redis', 'cassandra', 'sqlite', 'firebase'], DEVOPS: ['docker', 'kubernetes', 'jenkins', 'ansible', 'terraform'], TESTING: ['jest', 'mocha', 'cypress', 'selenium', 'playwright', 'jasmine', 'puppeteer', 'vitest'], MOBILE: ['react native', 'flutter', 'swift', 'kotlin', 'xamarin', 'objective-c'], TOOLS: ['webpack', 'vite', 'graphql', 'rest', 'storybook'], } as const export const ALL_KEYWORDS = [...new Set(Object.values(KEYWORDS).flat().sort())] export type Keyword = (typeof ALL_KEYWORDS)[number]