diff --git a/app/layout.js b/app/layout.js index 8f44413..539db00 100644 --- a/app/layout.js +++ b/app/layout.js @@ -16,7 +16,7 @@ const nunito = Nunito({ export const metadata = { title: "Ivan Rezchikov", - description: "Web developer and just a guy who loves coding", + description: "A guy who loves coding", }; export default function RootLayout({ children }) { diff --git a/app/page.js b/app/page.js index 4dd4fb6..23efc8f 100644 --- a/app/page.js +++ b/app/page.js @@ -108,8 +108,7 @@ export default function Main() { - {locale == "it" && (
- + {locale == "it" && (

Cari italiani, mi scuso, ma il sito non è completamente tradotto in italiano. Sarebbe meglio usare la versione in inglese.

)} diff --git a/dictionary/en.json b/dictionary/en.json index 376f332..972ff98 100644 --- a/dictionary/en.json +++ b/dictionary/en.json @@ -55,6 +55,12 @@ "description": "A voting platform for conducting elections, referendums, and polls with auth to ensure only citizens of Dusiburg can vote.", "text": "When elections in Dusiburg were on VK, we often had to choose between honesty and anonymity because candidates would sometimes ask friends to vote for them in private polls. So I built my own platform with authentication via Dusiburg ID, ensuring that only DU citizens vote. Recently, I added bills registration system for the Parliament of Dusiburg: parliamentarians vote, and the result is automatically sent to the President. He either signs or rejects the bill. If approved, it's automatucally published on Dusiburg ID. One of the biggest challenges was implementing interaction between the CEC site, Dusiburg ID, and the VK and Telegram bots." }, + { + "logoAlt": "Sudoku", + "title": "Sudoku", + "description": "This is a simple game written on Next.js. It's basically the first game I have ever written so that's a nice experience.", + "text": "My friend got me into Sudoku and very soon I was surprised to find that I liked it. It's not as difficult a game as I thought, and moreover it's a great brain teaser. One day, I decided to write my own site with Sudoku because I couldn't stand the large amount of advertising in apps. So, that's the result. I don't know why I chose this 8-bit aesthetic but I like it. Maybe I'll update the site one day and add some new features." + }, { "logoAlt": "Fastlink logo", "title": "Fastlink", diff --git a/dictionary/it.json b/dictionary/it.json index f1cc659..e76a0d1 100644 --- a/dictionary/it.json +++ b/dictionary/it.json @@ -55,6 +55,12 @@ "description": "A voting platform for conducting elections, referendums, and polls with auth to ensure only citizens of Dusiburg can vote.", "text": "When elections in Dusiburg were on VK, we often had to choose between honesty and anonymity because candidates would sometimes ask friends to vote for them in private polls. So I built my own platform with authentication via Dusiburg ID, ensuring that only DU citizens vote. Recently, I added bills registration system for the Parliament of Dusiburg: parliamentarians vote, and the result is automatically sent to the President. He either signs or rejects the bill. If approved, it's automatucally published on Dusiburg ID. One of the biggest challenges was implementing interaction between the CEC site, Dusiburg ID, and the VK and Telegram bots." }, + { + "logoAlt": "Sudoku", + "title": "Sudoku", + "description": "This is a simple game written on Next.js. It's basically the first game I have ever written so that's a nice experience.", + "text": "My friend got me into Sudoku and very soon I was surprised to find that I liked it. It's not as difficult a game as I thought, and moreover it's a great brain teaser. One day, I decided to write my own site with Sudoku because I couldn't stand the large amount of advertising in apps. So, that's the result. I don't know why I chose this 8-bit aesthetic but I like it. Maybe I'll update the site one day and add some new features." + }, { "logoAlt": "Fastlink logo", "title": "Fastlink", diff --git a/dictionary/ru.json b/dictionary/ru.json index 26e2f9a..9f26831 100644 --- a/dictionary/ru.json +++ b/dictionary/ru.json @@ -55,6 +55,12 @@ "description": "Платформа для голосований, где проводятся выборы, референдумы и опросы. Сервис создан для того, чтобы исключительно Граждане Дусибурга могли на них голосовать.", "text": "Когда голосования Дусибурга проводились в ВК, нужно было выбирать между честностью и анонимностью, ведь кандидаты зачастую просили друзей проголосовать в закрытом голосовании. Поэтому я сделал собственную платформу с авторизацией через Dusiburg ID, где голосуют только граждане. Недавно я добавил систему регистрации законопроектов для Парламента: парламетарии голосуют, результат автоматически отправляется Президенту, который подписывает или отклонияет закон. При успехе — он публикуется на Dusiburg ID. Большой сложностью была реализация взаимодействия сайта ЦИК, Dusiburg ID и ботов в ВК и Телеграме." }, + { + "logoAlt": "Sudoku", + "title": "Sudoku", + "description": "Это простенькая игра, написанная на Next.js. По сути, это первая игра, которую я написал, поэтому считаю, что это прекрасный опыт.", + "text": "Однажды моя подруга предложила поиграть в Судоку, и очень скоро я полюбил эту игру. Она оказалась не такой сложной, как я думал. Более того, это прекрасная разминка для мозга. Устав от большого количества рекламы в приложениях с Судоку, я решил написать свой собственный сайт, как говориться: с блекджеком и ... Я не знаю, почему я выбрал этот пиксельный дизайн, но он прикольный. Может быть, когда-нибудь я обновлю этот сайт и добавлю какие-то новые штучки туда." + }, { "logoAlt": "Fastlink logo", "title": "Fastlink", diff --git a/lib/projects.json b/lib/projects.json index 02ab4df..9037430 100644 --- a/lib/projects.json +++ b/lib/projects.json @@ -55,6 +55,23 @@ }, { "id": 3, + "screenshots": [ + "/images/screenshots/sudoku/1.png", + "/images/screenshots/sudoku/3.png", + "/images/screenshots/sudoku/2.png" + ], + "screenshotBg": "bg-zinc-800", + "logo": "/images/logos/sudoku.png", + "logoAlt": "projects.items.3.logoAlt", + "title": "projects.items.3.title", + "url": "https://sudoku.dusiburg.ru/", + "hostname": "sudoku.dusiburg.ru", + "description": "projects.items.3.description", + "text": "projects.items.3.text", + "skills": ["Next.js", "Tailwind", "Shadcn"] + }, + { + "id": 4, "screenshots": [ "/images/screenshots/fastlink/1.png", "/images/screenshots/fastlink/2.png", @@ -62,10 +79,10 @@ ], "screenshotBg": "bg-[#b394c5]", "logo": "/images/logos/fastlink.png", - "logoAlt": "projects.items.3.logoAlt", - "title": "projects.items.3.title", - "text": "projects.items.3.text", - "description": "projects.items.3.description", + "logoAlt": "projects.items.4.logoAlt", + "title": "projects.items.4.title", + "text": "projects.items.4.text", + "description": "projects.items.4.description", "skills": ["Next.js", "Tailwind", "Shadcn", "Go", "Postgres", "Supabase"] } ] \ No newline at end of file diff --git a/public/images/logos/sudoku.png b/public/images/logos/sudoku.png new file mode 100644 index 0000000..1d4f4f0 Binary files /dev/null and b/public/images/logos/sudoku.png differ diff --git a/public/images/screenshots/sudoku/1.png b/public/images/screenshots/sudoku/1.png new file mode 100644 index 0000000..2b83078 Binary files /dev/null and b/public/images/screenshots/sudoku/1.png differ diff --git a/public/images/screenshots/sudoku/2.png b/public/images/screenshots/sudoku/2.png new file mode 100644 index 0000000..33c0b1f Binary files /dev/null and b/public/images/screenshots/sudoku/2.png differ diff --git a/public/images/screenshots/sudoku/3.png b/public/images/screenshots/sudoku/3.png new file mode 100644 index 0000000..2e32337 Binary files /dev/null and b/public/images/screenshots/sudoku/3.png differ