From e46774a68eb1122818ff90c4ee3e2b4c76478436 Mon Sep 17 00:00:00 2001 From: Damjan Savic Date: Mon, 15 Dec 2025 21:46:33 +0100 Subject: [PATCH] =?UTF-8?q?Feature:=20Cursor=20IDE=20Projekt=20vollst?= =?UTF-8?q?=C3=A4ndig=20integriert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Übersetzungsdateien für DE, EN, SR erstellt - Projekt in ProjectPage.tsx registriert - Projekt in Portfolio-Index (de, en, sr) hinzugefügt 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- dev-dist/sw.js | 2 +- dev-dist/sw.js.map | 2 +- src/i18n/locales/de/portfolio/index.ts | 2 + .../de/portfolio/projects/cursor-ide.ts | 89 +++++++++++++++++++ src/i18n/locales/en/portfolio/index.ts | 2 + .../en/portfolio/projects/cursor-ide.ts | 89 +++++++++++++++++++ src/i18n/locales/sr/portfolio/index.ts | 2 + .../sr/portfolio/projects/cursor-ide.ts | 89 +++++++++++++++++++ src/pages/portfolio/ProjectPage.tsx | 9 ++ 9 files changed, 284 insertions(+), 2 deletions(-) create mode 100644 src/i18n/locales/de/portfolio/projects/cursor-ide.ts create mode 100644 src/i18n/locales/en/portfolio/projects/cursor-ide.ts create mode 100644 src/i18n/locales/sr/portfolio/projects/cursor-ide.ts diff --git a/dev-dist/sw.js b/dev-dist/sw.js index 0fb837f..aa51a9b 100644 --- a/dev-dist/sw.js +++ b/dev-dist/sw.js @@ -82,7 +82,7 @@ define(['./workbox-4a2e5f00'], (function (workbox) { 'use strict'; "revision": "3ca0b8505b4bec776b69afdba2768812" }, { "url": "index.html", - "revision": "0.mna0k3ramp8" + "revision": "0.j6gkgqhn35" }], {}); workbox.cleanupOutdatedCaches(); workbox.registerRoute(new workbox.NavigationRoute(workbox.createHandlerBoundToURL("index.html"), { diff --git a/dev-dist/sw.js.map b/dev-dist/sw.js.map index cbee6be..413821b 100644 --- a/dev-dist/sw.js.map +++ b/dev-dist/sw.js.map @@ -1 +1 @@ -{"version":3,"file":"sw.js","sources":["../../AppData/Local/Temp/3a98c64bfb7587e99df58e74bf42ab16/sw.js"],"sourcesContent":["import {registerRoute as workbox_routing_registerRoute} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-routing/registerRoute.mjs';\nimport {CacheableResponsePlugin as workbox_cacheable_response_CacheableResponsePlugin} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-cacheable-response/CacheableResponsePlugin.mjs';\nimport {CacheFirst as workbox_strategies_CacheFirst} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-strategies/CacheFirst.mjs';\nimport {NetworkOnly as workbox_strategies_NetworkOnly} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-strategies/NetworkOnly.mjs';\nimport {clientsClaim as workbox_core_clientsClaim} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-core/clientsClaim.mjs';\nimport {precacheAndRoute as workbox_precaching_precacheAndRoute} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-precaching/precacheAndRoute.mjs';\nimport {cleanupOutdatedCaches as workbox_precaching_cleanupOutdatedCaches} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-precaching/cleanupOutdatedCaches.mjs';\nimport {NavigationRoute as workbox_routing_NavigationRoute} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-routing/NavigationRoute.mjs';\nimport {createHandlerBoundToURL as workbox_precaching_createHandlerBoundToURL} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-precaching/createHandlerBoundToURL.mjs';/**\n * Welcome to your Workbox-powered service worker!\n *\n * You'll need to register this file in your web app.\n * See https://goo.gl/nhQhGp\n *\n * The rest of the code is auto-generated. Please don't update this file\n * directly; instead, make changes to your Workbox build configuration\n * and re-run your build process.\n * See https://goo.gl/2aRDsh\n */\n\n\n\n\n\n\n\n\nself.skipWaiting();\n\nworkbox_core_clientsClaim();\n\n\n/**\n * The precacheAndRoute() method efficiently caches and responds to\n * requests for URLs in the manifest.\n * See https://goo.gl/S9QRab\n */\nworkbox_precaching_precacheAndRoute([\n {\n \"url\": \"registerSW.js\",\n \"revision\": \"3ca0b8505b4bec776b69afdba2768812\"\n },\n {\n \"url\": \"index.html\",\n \"revision\": \"0.mna0k3ramp8\"\n }\n], {});\nworkbox_precaching_cleanupOutdatedCaches();\nworkbox_routing_registerRoute(new workbox_routing_NavigationRoute(workbox_precaching_createHandlerBoundToURL(\"index.html\"), {\n allowlist: [/^\\/$/],\n \n}));\n\n\nworkbox_routing_registerRoute(/^https:\\/\\/fonts\\.googleapis\\.com\\/.*/i, new workbox_strategies_CacheFirst({ \"cacheName\":\"google-fonts-cache\", plugins: [new workbox_cacheable_response_CacheableResponsePlugin({ statuses: [ 0, 200 ] })] }), 'GET');\nworkbox_routing_registerRoute(/^https:\\/\\/fonts\\.gstatic\\.com\\/.*/i, new workbox_strategies_CacheFirst({ \"cacheName\":\"gstatic-fonts-cache\", plugins: [new workbox_cacheable_response_CacheableResponsePlugin({ statuses: [ 0, 200 ] })] }), 'GET');\nworkbox_routing_registerRoute(/^https:\\/\\/www\\.googletagmanager\\.com\\/.*/i, new workbox_strategies_NetworkOnly(), 'GET');\n\n\n\n\n"],"names":["self","skipWaiting","workbox_core_clientsClaim","workbox_precaching_precacheAndRoute","workbox_precaching_cleanupOutdatedCaches","workbox_routing_registerRoute","workbox_routing_NavigationRoute","workbox_precaching_createHandlerBoundToURL","allowlist","workbox_strategies_CacheFirst","plugins","workbox_cacheable_response_CacheableResponsePlugin","statuses","workbox_strategies_NetworkOnly"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"sw.js","sources":["../../AppData/Local/Temp/488aac66e2102701f0ba462cb83c9055/sw.js"],"sourcesContent":["import {registerRoute as workbox_routing_registerRoute} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-routing/registerRoute.mjs';\nimport {CacheableResponsePlugin as workbox_cacheable_response_CacheableResponsePlugin} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-cacheable-response/CacheableResponsePlugin.mjs';\nimport {CacheFirst as workbox_strategies_CacheFirst} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-strategies/CacheFirst.mjs';\nimport {NetworkOnly as workbox_strategies_NetworkOnly} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-strategies/NetworkOnly.mjs';\nimport {clientsClaim as workbox_core_clientsClaim} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-core/clientsClaim.mjs';\nimport {precacheAndRoute as workbox_precaching_precacheAndRoute} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-precaching/precacheAndRoute.mjs';\nimport {cleanupOutdatedCaches as workbox_precaching_cleanupOutdatedCaches} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-precaching/cleanupOutdatedCaches.mjs';\nimport {NavigationRoute as workbox_routing_NavigationRoute} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-routing/NavigationRoute.mjs';\nimport {createHandlerBoundToURL as workbox_precaching_createHandlerBoundToURL} from 'C:/Users/damja/WebstormProjects/Portfolio/node_modules/workbox-precaching/createHandlerBoundToURL.mjs';/**\n * Welcome to your Workbox-powered service worker!\n *\n * You'll need to register this file in your web app.\n * See https://goo.gl/nhQhGp\n *\n * The rest of the code is auto-generated. Please don't update this file\n * directly; instead, make changes to your Workbox build configuration\n * and re-run your build process.\n * See https://goo.gl/2aRDsh\n */\n\n\n\n\n\n\n\n\nself.skipWaiting();\n\nworkbox_core_clientsClaim();\n\n\n/**\n * The precacheAndRoute() method efficiently caches and responds to\n * requests for URLs in the manifest.\n * See https://goo.gl/S9QRab\n */\nworkbox_precaching_precacheAndRoute([\n {\n \"url\": \"registerSW.js\",\n \"revision\": \"3ca0b8505b4bec776b69afdba2768812\"\n },\n {\n \"url\": \"index.html\",\n \"revision\": \"0.j6gkgqhn35\"\n }\n], {});\nworkbox_precaching_cleanupOutdatedCaches();\nworkbox_routing_registerRoute(new workbox_routing_NavigationRoute(workbox_precaching_createHandlerBoundToURL(\"index.html\"), {\n allowlist: [/^\\/$/],\n \n}));\n\n\nworkbox_routing_registerRoute(/^https:\\/\\/fonts\\.googleapis\\.com\\/.*/i, new workbox_strategies_CacheFirst({ \"cacheName\":\"google-fonts-cache\", plugins: [new workbox_cacheable_response_CacheableResponsePlugin({ statuses: [ 0, 200 ] })] }), 'GET');\nworkbox_routing_registerRoute(/^https:\\/\\/fonts\\.gstatic\\.com\\/.*/i, new workbox_strategies_CacheFirst({ \"cacheName\":\"gstatic-fonts-cache\", plugins: [new workbox_cacheable_response_CacheableResponsePlugin({ statuses: [ 0, 200 ] })] }), 'GET');\nworkbox_routing_registerRoute(/^https:\\/\\/www\\.googletagmanager\\.com\\/.*/i, new workbox_strategies_NetworkOnly(), 'GET');\n\n\n\n\n"],"names":["self","skipWaiting","workbox_core_clientsClaim","workbox_precaching_precacheAndRoute","workbox_precaching_cleanupOutdatedCaches","workbox_routing_registerRoute","workbox_routing_NavigationRoute","workbox_precaching_createHandlerBoundToURL","allowlist","workbox_strategies_CacheFirst","plugins","workbox_cacheable_response_CacheableResponsePlugin","statuses","workbox_strategies_NetworkOnly"],"mappings":"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"} \ No newline at end of file diff --git a/src/i18n/locales/de/portfolio/index.ts b/src/i18n/locales/de/portfolio/index.ts index 3a2c94a..c14dda6 100644 --- a/src/i18n/locales/de/portfolio/index.ts +++ b/src/i18n/locales/de/portfolio/index.ts @@ -7,6 +7,7 @@ import websiteMitKi from './projects/website-mit-ki'; import recrobot from './projects/recrobot'; import aiMusicProduction from './projects/ai-music-production'; import automatedAdCreatives from './projects/automated-ad-creatives'; +import cursorIde from './projects/cursor-ide'; export const portfolio = { // Meta-Informationen für die Portfolio-Seite seo: { @@ -66,5 +67,6 @@ export const portfolio = { 'recrobot': recrobot, 'ai-music-production': aiMusicProduction, 'automated-ad-creatives': automatedAdCreatives, + 'cursor-ide': cursorIde, } }; diff --git a/src/i18n/locales/de/portfolio/projects/cursor-ide.ts b/src/i18n/locales/de/portfolio/projects/cursor-ide.ts new file mode 100644 index 0000000..09d25b4 --- /dev/null +++ b/src/i18n/locales/de/portfolio/projects/cursor-ide.ts @@ -0,0 +1,89 @@ +// src/i18n/locales/de/portfolio/projects/cursor-ide.ts +export const cursorIde = { + meta: { + slug: 'cursor-ide', + title: 'Cursor IDE: KI-gestützte Softwareentwicklung', + description: 'Einführung in Cursor - die revolutionäre KI-gestützte Entwicklungsumgebung, die Softwareprojekte durch natürliche Sprache ermöglicht', + excerpt: 'Entdecke, wie Cursor IDE als persönlicher KI-Programmierer fungiert und komplette Projekte aus natürlicher Sprache erstellt.', + date: '2024-12', + category: 'KI & Entwicklung', + client: 'Tutorial', + duration: 'Einführung', + url: 'https://cursor.com', + repository: '', + documentation: '', + published: true, + featured: true, + technologies: ['Cursor IDE', 'KI', 'Next.js', 'React', 'TypeScript', 'Node.js'], + tags: ['KI', 'IDE', 'Entwicklung', 'Tutorial', 'Code-Generierung', 'Automatisierung'], + videoUrl: 'https://www.tella.tv/video/cursor-ide-1-1kjg' + }, + content: { + intro: 'Cursor ist eine KI-gestützte Entwicklungsumgebung, die wie ein persönlicher Programmierer funktioniert. Sie versteht natürliches Deutsch, generiert Code eigenständig, findet und behebt Fehler - und baut komplette Softwareprojekte auf Zuruf.', + + challenge: { + title: 'Früher: Die Herausforderungen', + description: 'Traditionelle Softwareentwicklung war mit hohen Hürden verbunden:', + points: [ + 'Programmiersprachen mussten erlernt werden', + 'Fehlersuche dauerte oft Stunden', + 'Jede Zeile Code musste selbst getippt werden', + 'Google und Stackoverflow waren ständige Begleiter', + 'Hohe Einstiegshürde für Nicht-Entwickler' + ] + }, + + solution: { + title: 'Heute: Die Lösung mit Cursor', + description: 'Cursor revolutioniert die Softwareentwicklung durch KI-Integration:', + content: 'Stell dir vor, du hättest einen persönlichen Programmierer, der neben dir sitzt und alle deine Softwareideen in natürlichem gesprochenen Deutsch verstehen kann. Genau das ist Cursor.', + points: [ + 'Einfach beschreiben, was du haben möchtest', + 'KI findet und behebt Fehler automatisch', + 'KI generiert den kompletten Code', + 'KI erklärt das gesamte Projekt im Editor', + 'Integrierter Browser für direkte Vorschau' + ] + }, + + technical: { + title: 'Das Cursor Interface', + description: 'Nach dem Download über cursor.com besteht das Interface aus:', + points: [ + 'Menüleiste (oben): Navigation durch die IDE', + 'File Explorer (links): Projektstruktur mit Verzeichnissen und Dateien', + 'Editor (Mitte): Ansicht und Bearbeitung von Dateien', + 'Terminal (unten): Einblendbar über View > Terminal', + 'KI Chat (rechts): Steuerung der Entwicklung per KI' + ] + }, + + implementation: { + title: 'Erste Schritte', + description: 'So startest du mit Cursor:', + points: [ + 'Cursor von cursor.com herunterladen', + 'Installation für das jeweilige Betriebssystem durchführen', + 'Projektordner anlegen und in Cursor öffnen', + 'Im KI-Chat beschreiben, was gebaut werden soll', + 'Die KI arbeiten lassen und bei Bedarf anpassen' + ] + }, + + results: { + title: 'Praxisbeispiel', + description: 'Ein einfacher Prompt wie "Ich möchte eine Website aufbauen mit Next, React und TypeScript mit einer modernen Darstellung von Hello World" reicht aus:', + points: [ + 'KI prüft den Projektzustand', + 'Das gesamte Projekt wird automatisch aufgebaut', + 'Nach wenigen Sekunden steht die Website', + 'Mit npm install Abhängigkeiten installieren', + 'Mit npm run dev den Entwicklungsserver starten' + ] + }, + + conclusion: 'Cursor revolutioniert die Softwareentwicklung, indem es die Barriere zwischen Idee und Umsetzung dramatisch senkt. Statt Programmiersprachen zu lernen, beschreibst du einfach in natürlicher Sprache, was du haben möchtest - und die KI erledigt den Rest.' + } +}; + +export default cursorIde; diff --git a/src/i18n/locales/en/portfolio/index.ts b/src/i18n/locales/en/portfolio/index.ts index c7f4bed..b675756 100644 --- a/src/i18n/locales/en/portfolio/index.ts +++ b/src/i18n/locales/en/portfolio/index.ts @@ -7,6 +7,7 @@ import websiteMitKi from './projects/website-mit-ki'; import recrobot from './projects/recrobot'; import aiMusicProduction from './projects/ai-music-production'; import automatedAdCreatives from './projects/automated-ad-creatives'; +import cursorIde from './projects/cursor-ide'; export const portfolio = { // Meta information for the portfolio page seo: { @@ -66,5 +67,6 @@ export const portfolio = { 'recrobot': recrobot, 'ai-music-production': aiMusicProduction, 'automated-ad-creatives': automatedAdCreatives, + 'cursor-ide': cursorIde, } }; diff --git a/src/i18n/locales/en/portfolio/projects/cursor-ide.ts b/src/i18n/locales/en/portfolio/projects/cursor-ide.ts new file mode 100644 index 0000000..14861bd --- /dev/null +++ b/src/i18n/locales/en/portfolio/projects/cursor-ide.ts @@ -0,0 +1,89 @@ +// src/i18n/locales/en/portfolio/projects/cursor-ide.ts +export const cursorIde = { + meta: { + slug: 'cursor-ide', + title: 'Cursor IDE: AI-Powered Software Development', + description: 'Introduction to Cursor - the revolutionary AI-powered development environment that enables software projects through natural language', + excerpt: 'Discover how Cursor IDE acts as your personal AI programmer and creates complete projects from natural language.', + date: '2024-12', + category: 'AI & Development', + client: 'Tutorial', + duration: 'Introduction', + url: 'https://cursor.com', + repository: '', + documentation: '', + published: true, + featured: true, + technologies: ['Cursor IDE', 'AI', 'Next.js', 'React', 'TypeScript', 'Node.js'], + tags: ['AI', 'IDE', 'Development', 'Tutorial', 'Code Generation', 'Automation'], + videoUrl: 'https://www.tella.tv/video/cursor-ide-1-1kjg' + }, + content: { + intro: 'Cursor is an AI-powered development environment that works like a personal programmer. It understands natural language, generates code independently, finds and fixes errors - and builds complete software projects on command.', + + challenge: { + title: 'Before: The Challenges', + description: 'Traditional software development came with high barriers:', + points: [ + 'Programming languages had to be learned', + 'Debugging often took hours', + 'Every line of code had to be typed manually', + 'Google and Stackoverflow were constant companions', + 'High entry barrier for non-developers' + ] + }, + + solution: { + title: 'Now: The Solution with Cursor', + description: 'Cursor revolutionizes software development through AI integration:', + content: 'Imagine having a personal programmer sitting next to you who can understand all your software ideas in natural spoken language. That is exactly what Cursor is.', + points: [ + 'Simply describe what you want', + 'AI finds and fixes errors automatically', + 'AI generates the complete code', + 'AI explains the entire project in the editor', + 'Integrated browser for direct preview' + ] + }, + + technical: { + title: 'The Cursor Interface', + description: 'After downloading from cursor.com, the interface consists of:', + points: [ + 'Menu bar (top): Navigation through the IDE', + 'File Explorer (left): Project structure with directories and files', + 'Editor (center): View and edit files', + 'Terminal (bottom): Accessible via View > Terminal', + 'AI Chat (right): Control development via AI' + ] + }, + + implementation: { + title: 'Getting Started', + description: 'How to start with Cursor:', + points: [ + 'Download Cursor from cursor.com', + 'Install for your operating system', + 'Create a project folder and open it in Cursor', + 'Describe what you want to build in the AI chat', + 'Let the AI work and adjust as needed' + ] + }, + + results: { + title: 'Practical Example', + description: 'A simple prompt like "I want to build a website with Next, React and TypeScript with a modern Hello World display" is enough:', + points: [ + 'AI checks the project state', + 'The entire project is built automatically', + 'After a few seconds, the website is ready', + 'Install dependencies with npm install', + 'Start the development server with npm run dev' + ] + }, + + conclusion: 'Cursor revolutionizes software development by dramatically lowering the barrier between idea and implementation. Instead of learning programming languages, you simply describe in natural language what you want - and the AI does the rest.' + } +}; + +export default cursorIde; diff --git a/src/i18n/locales/sr/portfolio/index.ts b/src/i18n/locales/sr/portfolio/index.ts index e64d27f..216b529 100644 --- a/src/i18n/locales/sr/portfolio/index.ts +++ b/src/i18n/locales/sr/portfolio/index.ts @@ -7,6 +7,7 @@ import websiteMitKi from './projects/website-mit-ki'; import recrobot from './projects/recrobot'; import aiMusicProduction from './projects/ai-music-production'; import automatedAdCreatives from './projects/automated-ad-creatives'; +import cursorIde from './projects/cursor-ide'; export const portfolio = { // Meta informacije za portfolio stranicu seo: { @@ -66,5 +67,6 @@ export const portfolio = { 'recrobot': recrobot, 'ai-music-production': aiMusicProduction, 'automated-ad-creatives': automatedAdCreatives, + 'cursor-ide': cursorIde, } }; diff --git a/src/i18n/locales/sr/portfolio/projects/cursor-ide.ts b/src/i18n/locales/sr/portfolio/projects/cursor-ide.ts new file mode 100644 index 0000000..3968e9f --- /dev/null +++ b/src/i18n/locales/sr/portfolio/projects/cursor-ide.ts @@ -0,0 +1,89 @@ +// src/i18n/locales/sr/portfolio/projects/cursor-ide.ts +export const cursorIde = { + meta: { + slug: 'cursor-ide', + title: 'Cursor IDE: Razvoj softvera sa veštačkom inteligencijom', + description: 'Uvod u Cursor - revolucionarno razvojno okruženje sa veštačkom inteligencijom koje omogućava softverske projekte kroz prirodni jezik', + excerpt: 'Otkrijte kako Cursor IDE funkcioniše kao vaš lični AI programer i kreira kompletne projekte iz prirodnog jezika.', + date: '2024-12', + category: 'AI & Razvoj', + client: 'Tutorial', + duration: 'Uvod', + url: 'https://cursor.com', + repository: '', + documentation: '', + published: true, + featured: true, + technologies: ['Cursor IDE', 'AI', 'Next.js', 'React', 'TypeScript', 'Node.js'], + tags: ['AI', 'IDE', 'Razvoj', 'Tutorial', 'Generisanje koda', 'Automatizacija'], + videoUrl: 'https://www.tella.tv/video/cursor-ide-1-1kjg' + }, + content: { + intro: 'Cursor je razvojno okruženje sa veštačkom inteligencijom koje funkcioniše kao lični programer. Razume prirodni jezik, samostalno generiše kod, pronalazi i ispravlja greške - i gradi kompletne softverske projekte na zahtev.', + + challenge: { + title: 'Ranije: Izazovi', + description: 'Tradicionalni razvoj softvera je imao visoke prepreke:', + points: [ + 'Programski jezici su morali da se nauče', + 'Traženje grešaka je često trajalo satima', + 'Svaki red koda je morao da se otkuca ručno', + 'Google i Stackoverflow su bili stalni pratioci', + 'Visoka ulazna barijera za ne-programere' + ] + }, + + solution: { + title: 'Sada: Rešenje sa Cursorom', + description: 'Cursor revolucioniše razvoj softvera kroz AI integraciju:', + content: 'Zamislite da imate ličnog programera koji sedi pored vas i može da razume sve vaše softverske ideje na prirodnom govornom jeziku. To je upravo Cursor.', + points: [ + 'Jednostavno opišite šta želite', + 'AI automatski pronalazi i ispravlja greške', + 'AI generiše kompletan kod', + 'AI objašnjava ceo projekat u editoru', + 'Integrisani pretraživač za direktan pregled' + ] + }, + + technical: { + title: 'Cursor interfejs', + description: 'Nakon preuzimanja sa cursor.com, interfejs se sastoji od:', + points: [ + 'Meni traka (gore): Navigacija kroz IDE', + 'File Explorer (levo): Struktura projekta sa direktorijumima i fajlovima', + 'Editor (centar): Pregled i uređivanje fajlova', + 'Terminal (dole): Dostupan preko View > Terminal', + 'AI Chat (desno): Kontrola razvoja preko AI' + ] + }, + + implementation: { + title: 'Prvi koraci', + description: 'Kako započeti sa Cursorom:', + points: [ + 'Preuzmite Cursor sa cursor.com', + 'Instalirajte za vaš operativni sistem', + 'Kreirajte folder projekta i otvorite ga u Cursoru', + 'Opišite šta želite da napravite u AI chatu', + 'Pustite AI da radi i prilagodite po potrebi' + ] + }, + + results: { + title: 'Praktičan primer', + description: 'Jednostavan prompt kao "Želim da napravim sajt sa Next, React i TypeScript sa modernim Hello World prikazom" je dovoljan:', + points: [ + 'AI proverava stanje projekta', + 'Ceo projekat se automatski gradi', + 'Posle nekoliko sekundi, sajt je spreman', + 'Instalirajte zavisnosti sa npm install', + 'Pokrenite razvojni server sa npm run dev' + ] + }, + + conclusion: 'Cursor revolucioniše razvoj softvera dramatično snižavajući barijeru između ideje i implementacije. Umesto učenja programskih jezika, jednostavno opišete na prirodnom jeziku šta želite - a AI odradi ostatak.' + } +}; + +export default cursorIde; diff --git a/src/pages/portfolio/ProjectPage.tsx b/src/pages/portfolio/ProjectPage.tsx index 389dee8..8b64d86 100644 --- a/src/pages/portfolio/ProjectPage.tsx +++ b/src/pages/portfolio/ProjectPage.tsx @@ -37,6 +37,10 @@ import deAiMusicProduction from '../../i18n/locales/de/portfolio/projects/ai-mus import enAiMusicProduction from '../../i18n/locales/en/portfolio/projects/ai-music-production'; import srAiMusicProduction from '../../i18n/locales/sr/portfolio/projects/ai-music-production'; +import deCursorIde from '../../i18n/locales/de/portfolio/projects/cursor-ide'; +import enCursorIde from '../../i18n/locales/en/portfolio/projects/cursor-ide'; +import srCursorIde from '../../i18n/locales/sr/portfolio/projects/cursor-ide'; + // Interfaces für den Projektinhalt interface ProjectMeta { date?: string; @@ -134,6 +138,11 @@ const projectTranslations: ProjectTranslations = { en: enAiMusicProduction, sr: srAiMusicProduction, }, + 'cursor-ide': { + de: deCursorIde, + en: enCursorIde, + sr: srCursorIde, + }, }; const TranslatedProjectPage = () => {