diff --git a/src/data/Organization.ts b/src/data/Organization.ts new file mode 100644 index 0000000..fa8a6a4 --- /dev/null +++ b/src/data/Organization.ts @@ -0,0 +1,26 @@ +interface Organization { + name: string, + siren: string, + site_web: string, +} + +export default Organization + +export const Limouzik: Organization = { + name: 'Limouzik', + siren: '824148738', + site_web: 'https://limouzik.com/' +} + +export const Unova: Organization = { + name: 'Unova', + siren: '824505689', + site_web: 'https://www.unova.fr/' +} + +export const Autoentreprise: Organization = { + name: 'Ma micro-entreprise', + siren: '852444964', + site_web: 'https://florianricher.fr/' +} + diff --git a/src/data/Project.ts b/src/data/Project.ts new file mode 100644 index 0000000..0383244 --- /dev/null +++ b/src/data/Project.ts @@ -0,0 +1,37 @@ +import Organization, {Limouzik} from "./Organization"; +import Tool, {Symfony, React} from "./Tool"; + +interface Project { + organization: Organization, + name: string, + description: string, + tools: Array +} + +export const SiteWebLimouzik: Project = { + organization: Limouzik, + name: 'Site web Limouzik', + description: 'Site web Limouzik', + tools: [Symfony] +} + +export const LimouzikV2: Project = { + organization: Limouzik, + name: 'Application V3', + description: 'Application V3', + tools: [React] +} + +export const LimouzikV3: Project = { + organization: Limouzik, + name: 'Application V3', + description: 'Application V3', + tools: [React] +} + +export const LimouzikV4: Project = { + organization: Limouzik, + name: 'Application V4', + description: 'Application V4', + tools: [React] +} \ No newline at end of file diff --git a/src/data/Tool.ts b/src/data/Tool.ts new file mode 100644 index 0000000..c410162 --- /dev/null +++ b/src/data/Tool.ts @@ -0,0 +1,155 @@ +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, + platforms: Array +} + +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: '', + 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: '', + 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 \ No newline at end of file