155 lines
No EOL
3.3 KiB
TypeScript
155 lines
No EOL
3.3 KiB
TypeScript
enum ToolType {
|
|
LANGUAGE, FRAMEWORK, LIB_OR_PACKAGE, OTHER
|
|
}
|
|
|
|
enum ToolPlatform {
|
|
MOBILE, WEB_FRONT, WEB_BACK, SYSTEM, DESKTOP
|
|
}
|
|
|
|
interface Tool {
|
|
type: ToolType,
|
|
name: string,
|
|
version: string | null,
|
|
description: string | null,
|
|
icon: string | null,
|
|
url: string,
|
|
tools: Array<Tool>,
|
|
platforms: Array<ToolPlatform>
|
|
}
|
|
|
|
export default Tool
|
|
|
|
// RUBY
|
|
|
|
export const Ruby: Tool = {
|
|
type: ToolType.LANGUAGE,
|
|
name: 'Ruby',
|
|
version: '2.7 - 3.2',
|
|
icon: null,
|
|
description: null,
|
|
url: 'https://www.ruby-lang.org/',
|
|
tools: [],
|
|
platforms: [ToolPlatform.MOBILE, ToolPlatform.WEB_BACK]
|
|
}
|
|
|
|
export const Rails: Tool = {
|
|
type: ToolType.FRAMEWORK,
|
|
name: 'Ruby on rails',
|
|
version: '5.1 - 7.0',
|
|
icon: null,
|
|
description: null,
|
|
url: 'https://rubyonrails.org/',
|
|
tools: [Ruby],
|
|
platforms: [ToolPlatform.WEB_BACK]
|
|
}
|
|
|
|
// PHP
|
|
|
|
export const Php: Tool = {
|
|
type: ToolType.LANGUAGE,
|
|
name: 'PHP',
|
|
icon: null,
|
|
version: '5 et 7',
|
|
description: null,
|
|
url: 'https://www.php.net/',
|
|
tools: [],
|
|
platforms: [ToolPlatform.WEB_BACK]
|
|
}
|
|
|
|
export const Symfony: Tool = {
|
|
type: ToolType.FRAMEWORK,
|
|
name: 'Symfony',
|
|
version: '4.0 - 5.0',
|
|
icon: null,
|
|
description: null,
|
|
url: 'https://symfony.com/',
|
|
tools: [Php],
|
|
platforms: [ToolPlatform.WEB_BACK]
|
|
}
|
|
|
|
// JS
|
|
|
|
export const Javascript: Tool = {
|
|
type: ToolType.LANGUAGE,
|
|
name: 'Javascript',
|
|
version: null,
|
|
icon: null,
|
|
description: null,
|
|
url: 'https://www.javascript.com/',
|
|
tools: [],
|
|
platforms: [ToolPlatform.WEB_BACK, ToolPlatform.WEB_FRONT, ToolPlatform.MOBILE, ToolPlatform.DESKTOP]
|
|
}
|
|
|
|
export const Typescript: Tool = {
|
|
type: ToolType.LANGUAGE,
|
|
name: 'Typescript',
|
|
version: null,
|
|
icon: null,
|
|
description: null,
|
|
url: 'https://www.typescriptlang.org/',
|
|
tools: [],
|
|
platforms: Javascript.platforms
|
|
}
|
|
|
|
export const React: Tool = {
|
|
type: ToolType.FRAMEWORK,
|
|
name: 'React',
|
|
version: '14, 15, 16, 17, 18',
|
|
icon: null,
|
|
description: null,
|
|
url: 'https://react.dev/',
|
|
tools: [Javascript, Typescript],
|
|
platforms: [ToolPlatform.WEB_FRONT]
|
|
}
|
|
|
|
export const Hotwire: Tool = {
|
|
type: ToolType.FRAMEWORK,
|
|
name: 'Hotwire',
|
|
version: '2 - 3',
|
|
icon: null,
|
|
description: 'Turbo + Stimulus',
|
|
url: 'https://stimulus.hotwired.dev/',
|
|
tools: [Javascript, Typescript, Rails],
|
|
platforms: [ToolPlatform.WEB_FRONT]
|
|
}
|
|
|
|
// CSS
|
|
|
|
// FLUTTER
|
|
|
|
export const Dart: Tool = {
|
|
type: ToolType.LANGUAGE,
|
|
name: 'Dart',
|
|
version: '2 - 3',
|
|
icon: null,
|
|
description: null,
|
|
url: 'https://dart.dev/',
|
|
tools: [],
|
|
platforms: [ToolPlatform.MOBILE, ToolPlatform.SYSTEM, ToolPlatform.WEB_FRONT, ToolPlatform.WEB_BACK, ToolPlatform.DESKTOP]
|
|
}
|
|
|
|
export const Flutter : Tool = {
|
|
type: ToolType.FRAMEWORK,
|
|
name: 'Flutter',
|
|
version: '2 - 3',
|
|
icon: null,
|
|
description: null,
|
|
url: 'https://flutter.dev/',
|
|
tools: [Dart],
|
|
platforms: [ToolPlatform.MOBILE, ToolPlatform.WEB_FRONT, ToolPlatform.WEB_BACK, ToolPlatform.DESKTOP]
|
|
}
|
|
|
|
// RUST
|
|
|
|
export const Rust : Tool = {
|
|
type: ToolType.LANGUAGE,
|
|
name: 'Rust',
|
|
version: 'Édition 2018, 2021',
|
|
icon: null,
|
|
description: null,
|
|
url: 'https://www.rust-lang.org/',
|
|
tools: [],
|
|
platforms: [ToolPlatform.SYSTEM, ToolPlatform.WEB_FRONT, ToolPlatform.WEB_BACK]
|
|
}
|
|
|
|
// OTHER
|