This repository has been archived on 2025-03-16. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
boilerplate/README.md
2025-03-16 11:34:59 +07:00

105 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# NTO
## Задачи
- [x] Migrator
- [x] Crud service generator (based on gorm gen)
- [ ] Easy init without git repository (like create-nto-app)
- [x] Excel export
- [x] Models validation logic (callbacks and other stuff)
- [ ] Models [linter](https://git.gogacoder.ru/NTO/gormlint)
- [x] Auto-generated frontend
## Установка
Для разработки необходимы следующие инструменты:
- [Node.js](https://nodejs.org/en)
- [Golang](https://go.dev/dl/)
- [VSCode](https://code.visualstudio.com/) или [Goland](https://cloud.gogacoder.ru/s/pZJzpeNSprmWDB8)
- ~~[UPX](https://github.com/upx/upx/releases/latest) - для сжатия.~~
- [Git](https://git-scm.com/)
- Wails3
- MinGw-64 (необязательно): https://jmeubank.github.io/tdm-gcc/
## Разработка
### Hot Reload
Для запуска приложения в режиме разработчика используйте эту команду в директории проекта:
```
wails3 dev
```
### Генерация TS биндингов
Для обновления API для TypeScript используйте команду:
```
wails3 generate bindings -ts
```
## Начало работы
Установите следующие утилиты перед началом работы:
```shell
go install -v github.com/wailsapp/wails/v3/cmd/wails3@latest
```
```shell
go install github.com/opbnq-q/nto-cli@latest
```
```shell
go install git.gogacoder.ru/NTO/crudgen/cmd/crudgen@latest
```
## Сборка
Для финальной сборки запустите эту команду в директории проекта:
На Linux/Mac OS:
```
PRODUCTION=true wails3 build
```
На Windows:
```
$env:PRODUCTION="true"; wails3 build
```
**Перед релизом не забыть**:
- убедиться, что дефолтные данные правильные
- убедиться, что приложение запускается
- (опционально) поместить все нужные asset'ы в папку assets
- приложить сопроводительную записку.
## Работа без GitHub
Настройте прокси для скачивания зависимостей через прокси:
```
go env -w GOPROXY="https://proxy.golang.org,direct"
```
## CRUD generator
Установите crudgen:
```
go install git.gogacoder.ru/NTO/crudgen/cmd/crudgen@latest
```
Сгенерируйте DAL:
```
cd gen
go run gen.go
```
Запустите crudgen:
```
crudgen -p internal
```
Не забудьте добавить новые модели в `Entities`, а сервисы в `Services`.