Skip to content

Commit dd696f5

Browse files
committed
fix: remove an example from a deprecated section, replace custom 'services' layer with default 'features', add all default layers to a structure tree
1 parent bd2be13 commit dd696f5

File tree

3 files changed

+11
-17
lines changed

3 files changed

+11
-17
lines changed

i18n/ru/docusaurus-plugin-content-docs/current/guides/tech/with-electron.mdx

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,15 @@ Electron-приложения имеют особую архитектуру, с
1515
│ └── renderer # Renderer процесс
1616
│ └── index.html # Точка входа renderer процесса
1717
├── main
18-
│ ├── services
18+
│ ├── features
1919
│ │ └── user
2020
│ │ └── ipc
2121
│ │ ├── get-user.ts
2222
│ │ └── send-user.ts
23+
│ ├── entities
2324
│ └── shared
2425
├── renderer
25-
── pages
26+
── pages
2627
│ │ ├── settings
2728
│ │ │ ├── ipc
2829
│ │ │ │ ├── get-user.ts
@@ -34,6 +35,9 @@ Electron-приложения имеют особую архитектуру, с
3435
│ │ ├── ui
3536
│ │ │ └── home.tsx
3637
│ │ └── index.ts
38+
│ ├── widgets
39+
│ ├── features
40+
│ ├── entities
3741
│ └── shared
3842
└── shared # Общий код между main и renderer
3943
└── ipc # Описание IPC (наименование event'ов, контракты)
@@ -46,7 +50,7 @@ Electron-приложения имеют особую архитектуру, с
4650

4751
## Дополнительные изменения в стандартной структуре
4852
Предлагается использовать новый сегмент `ipc`, в котором происходит взаимодействие между процессами.
49-
Слои `pages` и `widgets`, исходя из названия, не должен присутствовать в `src/main`, вместо них предлагается в качестве самого верхнего уровня использовать слой `services`.
53+
Слои `pages` и `widgets`, исходя из названия, не должны присутствовать в `src/main`, вы можете использовать `features`, `entities` и `shared`.
5054
Слой `app` в `src` содержит точки входа для `main` и `renderer`, а также IPC.
5155
Сегментам в слое `app` нежелательно иметь точек пересечения
5256

@@ -99,7 +103,7 @@ const API: TElectronAPI = {
99103
contextBridge.exposeInMainWorld('electron', API);
100104
```
101105

102-
```typescript title="src/main/services/user/ipc/send-user.ts"
106+
```typescript title="src/main/features/user/ipc/send-user.ts"
103107
import { ipcMain } from 'electron';
104108
import { CHANNELS } from 'shared/ipc';
105109

@@ -113,18 +117,18 @@ export const sendUser = () => {
113117
};
114118
```
115119

116-
```typescript title="src/renderer/page/user-settings/ipc/get-user.ts"
120+
```typescript title="src/renderer/pages/user-settings/ipc/get-user.ts"
117121
import { CHANNELS } from 'shared/ipc';
118122

119123
export const getUser = () => {
120124
const user = window.electron[CHANNELS.GET_USER_DATA]();
121125

122-
return user ?? { name: 'John Dont e', email: 'john.donte@example.com' };
126+
return user ?? { name: 'John Donte', email: 'john.donte@example.com' };
123127
};
124128
```
125129

126130
## См. также
127131
- [Документация по моделям процессов](https://www.electronjs.org/docs/latest/tutorial/process-model)
128132
- [Документация по изоляции контекстов](https://www.electronjs.org/docs/latest/tutorial/context-isolation)
129133
- [Документация по IPC](https://www.electronjs.org/docs/latest/tutorial/ipc)
130-
- [Пример](https://github.com/georgkrom/electron-fsd.git)
134+
- [Пример](https://github.com/feature-sliced/examples/tree/master/examples/electron)

src/pages/examples/_config.ts

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -426,15 +426,5 @@ export const examples: Example[] = [
426426
updatedAt: "2024-08-10",
427427
tech: ["react", "redux-toolkit", "typescript"],
428428
},
429-
{
430-
title: "Electron FSD",
431-
description:
432-
'Electron application template using Feature-Sliced Design',
433-
source: "https://github.com/georgkrom/electron-fsd",
434-
preview: require("./img/electron-fsd.png"),
435-
version: VERSIONS.V2,
436-
updatedAt: "2025-06-09",
437-
tech: ["react", "electron", "typescript"],
438-
},
439429
// Reverse the list (last examples should be at the top)
440430
].reverse();
-8.07 KB
Binary file not shown.

0 commit comments

Comments
 (0)