Skip to content

shchurofff/developer_env

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

102 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ Developer Environment

Developer Environment β€” это соврСмСнноС Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², созданноС для ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ управлСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ, отслСТивания Π·Π°Ρ‚Ρ€Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (time tracking) ΠΈ хранСния ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ².

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ построСн с фокусом Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, чистый UI ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΡƒΡŽ Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΡŽ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π±Π΅ΡΡˆΠΎΠ²Π½ΡƒΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΈ гостСвой доступ.

✨ Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»

  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².
  • Π’Ρ€Π΅ΠΊΠΈΠ½Π³ Π·Π°Π΄Π°Ρ‡ (Task Management): Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ списком Π·Π°Π΄Π°Ρ‡ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.
  • Π£Ρ‡Π΅Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Time Entries): Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π»ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Ρ‚Ρ€Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ врСмя прямо ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π°Π΄Π°Ρ‡.
  • АутСнтификация: НадСТная систСма Π²Ρ…ΠΎΠ΄Π° Ρ‡Π΅Ρ€Π΅Π· Email/Password, Google ΠΈ GitHub (Π½Π° Π±Π°Π·Π΅ Better Auth), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹Π΅ (гостСвыС) сСссии для тСстирования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°.
  • ВСмная/БвСтлая Ρ‚Π΅ΠΌΠ°: Полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° систСмной Ρ‚Π΅ΠΌΡ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ next-themes.

🚧 Π’ ΠΏΠ»Π°Π½Π°Ρ… (Roadmap)

  • Π”Π΅Ρ‚Π°Π»ΡŒΠ½Π°Ρ страница Π·Π°Π΄Π°Ρ‡ΠΈ: ΠŸΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ экран для описания, Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ ΠΈ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΡƒΡ‡Π΅Ρ‚Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎ Π·Π°Π΄Π°Ρ‡Π΅.
  • Π₯Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π΄Π°Π½Π½Ρ‹Ρ… (Repository): ΠžΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для сохранСния Π²Π°ΠΆΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², сниппСтов ΠΈ Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.
  • БыстрыС ссылки (Quick Links): Π”Π°ΡˆΠ±ΠΎΡ€Π΄ с кастомными Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ для быстрого доступа ΠΊ Π²Π°ΠΆΠ½Ρ‹ΠΌ рСсурсам.

πŸ›  ВСхнологичСский стСк

  • Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ: Next.js (App Router, Server Actions)
  • Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…: PostgreSQL (via Supabase)
  • ORM: Prisma
  • АутСнтификация: Better Auth
  • Π€Π°ΠΉΠ»ΠΎΠ²ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅: Vercel Blob
  • Бтилизация: Tailwind CSS v4
  • UI ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹: Shadcn/ui
  • Π€ΠΎΡ€ΠΌΡ‹ ΠΈ Валидация: React Hook Form + Zod
  • Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΠ΄Π°: ESLint, Prettier, TypeScript, Lefthook, TypeScript strict mode.

πŸ’» Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ запуск (Getting Started)

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ ΠΏΠΎ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° локальной машинС.

1. ВрСбования

Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас установлСны:

  • Node.js (v20+)
  • pnpm (ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°)
  • PostgreSQL (локально ΠΈΠ»ΠΈ ΠΎΠ±Π»Π°Ρ‡Π½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Supabase)

2. Установка зависимостСй

ΠšΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ установитС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹:

git clone https://github.com/shchurofff/developer_env.git
cd developer_env
pnpm install

3. Настройка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» .env Π² ΠΊΠΎΡ€Π½Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, скопировав структуру ΠΈΠ· .env.example:

cp .env.example .env

Π—Π°Ρ‚Π΅ΠΌ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ .env вашими Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ

4. πŸ” ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ .env (Environment Variables)

Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния Π²Π°ΠΌ понадобятся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ сСрвисы:

  • Π‘Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… (PostgreSQL / Supabase):

    DATABASE_URL: Π‘Ρ‚Ρ€ΠΎΠΊΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

    DIRECT_URL: ΠŸΡ€ΡΠΌΠ°Ρ строка ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.

  • Vercel Blob:

    BLOB_READ_WRITE_TOKEN: Π’ΠΎΠΊΠ΅Π½ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ чтСния Ρ„Π°ΠΉΠ»ΠΎΠ².

  • Better Auth:

    BETTER_AUTH_SECRET: Блучайная строка для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ сСссий.

    BETTER_AUTH_URL: Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ URL прилоТСния (для Π»ΠΎΠΊΠ°Π»ΠΊΠΈ: http://localhost:3000).

  • OAuth ΠŸΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρ‹ (Google & GitHub):

    ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ CLIENT_ID ΠΈ CLIENT_SECRET Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… консолях Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° (Google Cloud Console ΠΈ GitHub Developer Settings).

5. Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ Π‘Π°Π·Ρ‹ Π”Π°Π½Π½Ρ‹Ρ…

Π‘Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Prisma ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ:

pnpm prisma generate
pnpm prisma db push
# ΠΈΠ»ΠΈ pnpm prisma migrate dev (Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΉ)

6. Запуск

ЗапуститС сСрвСр для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ:

pnpm dev

βš‘Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ с Zed IDE

Если вашим основным Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ являСтся Zed, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΡƒΠΆΠ΅ содСрТит прСднастроСнныС Π·Π°Π΄Π°Ρ‡ΠΈ (tasks) для быстрого старта. Они Π»Π΅ΠΆΠ°Ρ‚ Π² Ρ„Π°ΠΉΠ»Π΅ .zed/tasks.json.

Как ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ:

  1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² Zed.
  2. НаТмитС Cmd + Shift + R (Π½Π° Mac) ΠΈΠ»ΠΈ Ctrl + Shift + R (Π½Π° Windows/Linux), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ мСню Π·Π°Π΄Π°Ρ‡.
  3. Π›ΠΈΠ±ΠΎ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Command Palette (Cmd/Ctrl + Shift + P) ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ task: spawn.
  4. Π’ появившСмся спискС Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:
    • Development Server β€” запускаСт pnpm dev Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅.
    • Build the application β€” собираСт ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.
    • Lint the project β€” запускаСт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΊΠΎΠ΄Π°.
    • Production Server β€” запускаСт собранный ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

Π’Π΅Ρ€ΠΌΠΈΠ½Π°Π» автоматичСски скроСтся ΠΏΡ€ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π»ΠΈΠ½Ρ‚ΠΈΠ½Π³Π΅) ΠΈΠ»ΠΈ останСтся Π² Π΄ΠΎΠΊΠ΅, Ссли это Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ сСрвСр.


πŸ“ Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ, раздСляя ΠΎΠ±Ρ‰ΠΈΠ΅ UI-элСмСнты ΠΈ бизнСс-Π»ΠΎΠ³ΠΈΠΊΡƒ:

app/                #  Π ΠΎΡƒΡ‚ΠΈΠ½Π³ Next.js (страницы, layout, API)
modules/            # Π˜Π·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ бизнСс-ΠΌΠΎΠ΄ΡƒΠ»ΠΈ (auth, projects, tasks, home)
components/
  ui/               # ΠŸΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ "Π³Π»ΡƒΠΏΡ‹Π΅" UI-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹
server/             # Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹Π΅ дСйствия (Server Actions) ΠΈ сСрвисы для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π‘Π”
lib/                # Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹, Ρ…Π΅Π»ΠΏΠ΅Ρ€Ρ‹ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ
prisma/             # Π‘Ρ…Π΅ΠΌΠ° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ

About

My personal view of a developer's workspace πŸ‘€

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors