create-wizze-app 0.1.4 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -8
- package/dist/index.js +17 -3
- package/package.json +1 -1
- package/templates/expo-default-sdk55/AGENTS.md +3 -2
- package/templates/expo-default-sdk55/README.md +26 -41
- package/templates/expo-default-sdk55/app.json +1 -1
- package/templates/expo-default-sdk55/package.json +7 -6
- package/templates/expo-default-sdk55/scripts/reset-project.js +1 -1
- package/templates/expo-default-sdk55/src/app/explore.tsx +4 -4
- package/templates/expo-default-sdk55/src/app/index.tsx +1 -1
- package/templates/expo-default-sdk55/src/components/animated-icon.module.css +1 -1
- package/templates/expo-default-sdk55/src/components/animated-icon.tsx +1 -1
- package/templates/expo-default-sdk55/src/components/animated-icon.web.tsx +2 -2
- package/templates/expo-default-sdk55/src/components/app-tabs.web.tsx +2 -2
- package/templates/expo-default-sdk55/src/components/web-badge.tsx +3 -4
- package/templates/expo-default-sdk55/src/hooks/use-theme.ts +1 -2
- package/templates/expo-default-sdk55/assets/expo.icon/Assets/expo-symbol 2.svg +0 -3
- package/templates/expo-default-sdk55/assets/expo.icon/Assets/grid.png +0 -0
- package/templates/expo-default-sdk55/assets/expo.icon/icon.json +0 -40
- /package/templates/expo-default-sdk55/assets/images/{expo-badge-white.png → wizze-badge-white.png} +0 -0
- /package/templates/expo-default-sdk55/assets/images/{expo-badge.png → wizze-badge.png} +0 -0
- /package/templates/expo-default-sdk55/assets/images/{expo-logo.png → wizze-logo.png} +0 -0
package/README.md
CHANGED
|
@@ -9,17 +9,16 @@ Gerador oficial de projetos do Wizze Framework.
|
|
|
9
9
|
|
|
10
10
|
## O que é gerado
|
|
11
11
|
|
|
12
|
-
- Estrutura base
|
|
12
|
+
- Estrutura base oficial do Wizze Go para apps Android, iOS e Web.
|
|
13
13
|
- Suporte universal para Android, iOS e Web.
|
|
14
|
-
- `src/app` com rotas por arquivo
|
|
14
|
+
- `src/app` com rotas por arquivo.
|
|
15
15
|
- `src/components`, `src/constants` e `src/hooks`.
|
|
16
|
-
- `app.json` configurado para
|
|
16
|
+
- `app.json` configurado para runtime mobile/web.
|
|
17
17
|
- `wizze.config.ts` com metadados do projeto Wizze Go.
|
|
18
18
|
|
|
19
19
|
## Scripts iniciais
|
|
20
20
|
|
|
21
|
-
- `npm
|
|
22
|
-
- `npm run android`
|
|
23
|
-
- `npm run ios`
|
|
24
|
-
- `npm run web`
|
|
25
|
-
- `npm run prebuild` (gera pastas nativas `android/` e `ios/`)
|
|
21
|
+
- `npm start` (usa `wizze start --dev-client`)
|
|
22
|
+
- `npm run android` (build cloud Android)
|
|
23
|
+
- `npm run ios` (build cloud iOS)
|
|
24
|
+
- `npm run web` (inicia sessão de desenvolvimento)
|
package/dist/index.js
CHANGED
|
@@ -17,7 +17,7 @@ const SUPPORTED_TEMPLATES = new Set([
|
|
|
17
17
|
const TEMPLATE_META = {
|
|
18
18
|
blank: {
|
|
19
19
|
title: 'Wizze Go Base',
|
|
20
|
-
subtitle: 'Estrutura universal
|
|
20
|
+
subtitle: 'Estrutura universal oficial do Wizze Go para Android, iOS e Web.',
|
|
21
21
|
accentColor: '#208AEF',
|
|
22
22
|
},
|
|
23
23
|
'dashboard-mobile': {
|
|
@@ -115,7 +115,7 @@ async function resolveBaseTemplateDir() {
|
|
|
115
115
|
return candidate;
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
|
-
throw new Error('Template base do
|
|
118
|
+
throw new Error('Template base do Wizze Go não encontrado no pacote create-wizze-app.');
|
|
119
119
|
}
|
|
120
120
|
async function patchProjectMetadata(input) {
|
|
121
121
|
const { appDir, slug, displayName, template, templateMeta } = input;
|
|
@@ -126,6 +126,20 @@ async function patchProjectMetadata(input) {
|
|
|
126
126
|
const templateInfoPath = join(appDir, 'src', 'constants', 'wizze-template.ts');
|
|
127
127
|
const packageJson = JSON.parse(await readFile(packageJsonPath, 'utf8'));
|
|
128
128
|
packageJson.name = slug;
|
|
129
|
+
const scripts = packageJson.scripts && typeof packageJson.scripts === 'object'
|
|
130
|
+
? { ...packageJson.scripts }
|
|
131
|
+
: {};
|
|
132
|
+
scripts.start = 'wizze start --dev-client';
|
|
133
|
+
scripts.android = 'wizze build android --cloud';
|
|
134
|
+
scripts.ios = 'wizze build ios --cloud';
|
|
135
|
+
scripts.web = 'wizze start';
|
|
136
|
+
scripts.lint = 'wizze doctor';
|
|
137
|
+
packageJson.scripts = scripts;
|
|
138
|
+
const devDependencies = packageJson.devDependencies && typeof packageJson.devDependencies === 'object'
|
|
139
|
+
? { ...packageJson.devDependencies }
|
|
140
|
+
: {};
|
|
141
|
+
devDependencies.wizze = '^0.1.6';
|
|
142
|
+
packageJson.devDependencies = devDependencies;
|
|
129
143
|
await writeFile(packageJsonPath, `${JSON.stringify(packageJson, null, 2)}\n`, 'utf8');
|
|
130
144
|
const appJson = JSON.parse(await readFile(appJsonPath, 'utf8'));
|
|
131
145
|
if (!appJson.expo || typeof appJson.expo !== 'object') {
|
|
@@ -159,7 +173,7 @@ async function patchProjectMetadata(input) {
|
|
|
159
173
|
'',
|
|
160
174
|
`Este projeto foi inicializado com o template \`${template}\` do Wizze Go.`,
|
|
161
175
|
'',
|
|
162
|
-
'- Estrutura base: padrão oficial do
|
|
176
|
+
'- Estrutura base: padrão oficial do Wizze Go.',
|
|
163
177
|
'- Plataformas: Android, iOS e Web.',
|
|
164
178
|
'- Configuração Wizze: `wizze.config.ts`.',
|
|
165
179
|
'',
|
package/package.json
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Wizze Go Template
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Use este template como base oficial do Wizze Go.
|
|
4
|
+
Mantenha foco em experiência de cliente, sem expor dados internos, segredos ou caminhos privados.
|
|
@@ -1,56 +1,41 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Wizze Go App
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Projeto base oficial para aplicativos Wizze Go com suporte a Android, iOS e Web.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Início rápido
|
|
6
6
|
|
|
7
|
-
1.
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
npm install
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
2. Start the app
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
npx expo start
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
In the output, you'll find options to open the app in a
|
|
20
|
-
|
|
21
|
-
- [development build](https://docs.expo.dev/develop/development-builds/introduction/)
|
|
22
|
-
- [Android emulator](https://docs.expo.dev/workflow/android-studio-emulator/)
|
|
23
|
-
- [iOS simulator](https://docs.expo.dev/workflow/ios-simulator/)
|
|
24
|
-
- [Expo Go](https://expo.dev/go), a limited sandbox for trying out app development with Expo
|
|
25
|
-
|
|
26
|
-
You can start developing by editing the files inside the **app** directory. This project uses [file-based routing](https://docs.expo.dev/router/introduction).
|
|
27
|
-
|
|
28
|
-
## Get a fresh project
|
|
29
|
-
|
|
30
|
-
When you're ready, run:
|
|
7
|
+
1. Instale as dependências
|
|
31
8
|
|
|
32
9
|
```bash
|
|
33
|
-
npm
|
|
10
|
+
npm install
|
|
34
11
|
```
|
|
35
12
|
|
|
36
|
-
|
|
13
|
+
2. Inicie o desenvolvimento
|
|
37
14
|
|
|
38
|
-
|
|
15
|
+
```bash
|
|
16
|
+
npm start
|
|
17
|
+
```
|
|
39
18
|
|
|
40
|
-
|
|
41
|
-
- If you'd like to set up unit testing, follow our guide on ["Unit Testing with Jest"](https://docs.expo.dev/develop/unit-testing/)
|
|
42
|
-
- Learn more about the TypeScript setup in this template in our guide on ["Using TypeScript"](https://docs.expo.dev/guides/typescript/)
|
|
19
|
+
## Fluxo recomendado
|
|
43
20
|
|
|
44
|
-
|
|
21
|
+
- `npm start`: inicia o modo desenvolvimento.
|
|
22
|
+
- `npm run android`: envia build Android para a fila cloud.
|
|
23
|
+
- `npm run ios`: envia build iOS para a fila cloud.
|
|
24
|
+
- `npm run web`: inicia a sessão de desenvolvimento.
|
|
25
|
+
- `npm run lint`: executa diagnóstico rápido do ambiente.
|
|
45
26
|
|
|
46
|
-
|
|
27
|
+
## Estrutura principal
|
|
47
28
|
|
|
48
|
-
-
|
|
49
|
-
-
|
|
29
|
+
- `src/app`: telas e layout por rotas.
|
|
30
|
+
- `src/components`: componentes reutilizáveis.
|
|
31
|
+
- `src/constants`: tema e constantes de UI.
|
|
32
|
+
- `src/hooks`: hooks utilitários.
|
|
33
|
+
- `wizze.config.ts`: configuração do projeto Wizze Go.
|
|
50
34
|
|
|
51
|
-
##
|
|
35
|
+
## Reset de base
|
|
52
36
|
|
|
53
|
-
|
|
37
|
+
Quando quiser limpar o starter e começar do zero:
|
|
54
38
|
|
|
55
|
-
|
|
56
|
-
|
|
39
|
+
```bash
|
|
40
|
+
npm run reset-project
|
|
41
|
+
```
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
"main": "expo-router/entry",
|
|
4
4
|
"version": "1.0.0",
|
|
5
5
|
"scripts": {
|
|
6
|
-
"start": "
|
|
6
|
+
"start": "wizze start --dev-client",
|
|
7
7
|
"reset-project": "node ./scripts/reset-project.js",
|
|
8
|
-
"android": "
|
|
9
|
-
"ios": "
|
|
10
|
-
"web": "
|
|
11
|
-
"lint": "
|
|
8
|
+
"android": "wizze build android --cloud",
|
|
9
|
+
"ios": "wizze build ios --cloud",
|
|
10
|
+
"web": "wizze start",
|
|
11
|
+
"lint": "wizze doctor"
|
|
12
12
|
},
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"@react-navigation/bottom-tabs": "^7.15.5",
|
|
@@ -39,7 +39,8 @@
|
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"@types/react": "~19.2.2",
|
|
42
|
-
"typescript": "~5.9.2"
|
|
42
|
+
"typescript": "~5.9.2",
|
|
43
|
+
"wizze": "^0.1.6"
|
|
43
44
|
},
|
|
44
45
|
"private": true
|
|
45
46
|
}
|
|
@@ -89,7 +89,7 @@ const moveDirectories = async (userInput) => {
|
|
|
89
89
|
|
|
90
90
|
console.log("\n✅ Project reset complete. Next steps:");
|
|
91
91
|
console.log(
|
|
92
|
-
`1. Run \`
|
|
92
|
+
`1. Run \`npm start\` to start a development server.\n2. Edit src/app/index.tsx to edit the main screen.\n3. Put all your application code in /src, only screens and layout files should be in /src/app.${
|
|
93
93
|
userInput === "y"
|
|
94
94
|
? `\n4. Delete the /${exampleDir} directory when you're done referencing it.`
|
|
95
95
|
: ""
|
|
@@ -45,10 +45,10 @@ export default function TabTwoScreen() {
|
|
|
45
45
|
This starter app includes example{'\n'}code to help you get started.
|
|
46
46
|
</ThemedText>
|
|
47
47
|
|
|
48
|
-
<ExternalLink href="https://
|
|
48
|
+
<ExternalLink href="https://dev.wizzepro.com/docs" asChild>
|
|
49
49
|
<Pressable style={({ pressed }) => pressed && styles.pressed}>
|
|
50
50
|
<ThemedView type="backgroundElement" style={styles.linkButton}>
|
|
51
|
-
<ThemedText type="link">
|
|
51
|
+
<ThemedText type="link">Wizze documentation</ThemedText>
|
|
52
52
|
<SymbolView
|
|
53
53
|
tintColor={theme.text}
|
|
54
54
|
name={{ ios: 'arrow.up.right.square', android: 'link', web: 'link' }}
|
|
@@ -69,7 +69,7 @@ export default function TabTwoScreen() {
|
|
|
69
69
|
The layout file in <ThemedText type="code">src/app/_layout.tsx</ThemedText> sets up
|
|
70
70
|
the tab navigator.
|
|
71
71
|
</ThemedText>
|
|
72
|
-
<ExternalLink href="https://
|
|
72
|
+
<ExternalLink href="https://dev.wizzepro.com/docs">
|
|
73
73
|
<ThemedText type="linkPrimary">Learn more</ThemedText>
|
|
74
74
|
</ExternalLink>
|
|
75
75
|
</Collapsible>
|
|
@@ -106,7 +106,7 @@ export default function TabTwoScreen() {
|
|
|
106
106
|
<ThemedText type="code">useColorScheme()</ThemedText> hook lets you inspect what the
|
|
107
107
|
user's current color scheme is, and so you can adjust UI colors accordingly.
|
|
108
108
|
</ThemedText>
|
|
109
|
-
<ExternalLink href="https://
|
|
109
|
+
<ExternalLink href="https://dev.wizzepro.com/docs">
|
|
110
110
|
<ThemedText type="linkPrimary">Learn more</ThemedText>
|
|
111
111
|
</ExternalLink>
|
|
112
112
|
</Collapsible>
|
|
@@ -89,7 +89,7 @@ export function AnimatedIcon() {
|
|
|
89
89
|
|
|
90
90
|
<Animated.View entering={keyframe.duration(DURATION)} style={styles.background} />
|
|
91
91
|
<Animated.View style={styles.imageContainer} entering={logoKeyframe.duration(DURATION)}>
|
|
92
|
-
<Image style={styles.image} source={require('@/assets/images/
|
|
92
|
+
<Image style={styles.image} source={require('@/assets/images/wizze-logo.png')} />
|
|
93
93
|
</Animated.View>
|
|
94
94
|
</View>
|
|
95
95
|
);
|
|
@@ -62,11 +62,11 @@ export function AnimatedIcon() {
|
|
|
62
62
|
</Animated.View>
|
|
63
63
|
|
|
64
64
|
<Animated.View style={styles.background} entering={keyframe.duration(DURATION)}>
|
|
65
|
-
<div className={classes.
|
|
65
|
+
<div className={classes.brandLogoBackground} />
|
|
66
66
|
</Animated.View>
|
|
67
67
|
|
|
68
68
|
<Animated.View style={styles.imageContainer} entering={logoKeyframe.duration(DURATION)}>
|
|
69
|
-
<Image style={styles.image} source={require('@/assets/images/
|
|
69
|
+
<Image style={styles.image} source={require('@/assets/images/wizze-logo.png')} />
|
|
70
70
|
</Animated.View>
|
|
71
71
|
</View>
|
|
72
72
|
);
|
|
@@ -56,12 +56,12 @@ export function CustomTabList(props: TabListProps) {
|
|
|
56
56
|
<View {...props} style={styles.tabListContainer}>
|
|
57
57
|
<ThemedView type="backgroundElement" style={styles.innerContainer}>
|
|
58
58
|
<ThemedText type="smallBold" style={styles.brandText}>
|
|
59
|
-
|
|
59
|
+
Wizze Starter
|
|
60
60
|
</ThemedText>
|
|
61
61
|
|
|
62
62
|
{props.children}
|
|
63
63
|
|
|
64
|
-
<ExternalLink href="https://
|
|
64
|
+
<ExternalLink href="https://dev.wizzepro.com/docs" asChild>
|
|
65
65
|
<Pressable style={styles.externalPressable}>
|
|
66
66
|
<ThemedText type="link">Docs</ThemedText>
|
|
67
67
|
<SymbolView
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { version } from 'expo/package.json';
|
|
2
1
|
import { Image } from 'expo-image';
|
|
3
2
|
import React from 'react';
|
|
4
3
|
import { useColorScheme, StyleSheet } from 'react-native';
|
|
@@ -14,13 +13,13 @@ export function WebBadge() {
|
|
|
14
13
|
return (
|
|
15
14
|
<ThemedView style={styles.container}>
|
|
16
15
|
<ThemedText type="code" themeColor="textSecondary" style={styles.versionText}>
|
|
17
|
-
|
|
16
|
+
Wizze Go
|
|
18
17
|
</ThemedText>
|
|
19
18
|
<Image
|
|
20
19
|
source={
|
|
21
20
|
scheme === 'dark'
|
|
22
|
-
? require('@/assets/images/
|
|
23
|
-
: require('@/assets/images/
|
|
21
|
+
? require('@/assets/images/wizze-badge-white.png')
|
|
22
|
+
: require('@/assets/images/wizze-badge.png')
|
|
24
23
|
}
|
|
25
24
|
style={styles.badgeImage}
|
|
26
25
|
/>
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
<svg width="652" height="606" viewBox="0 0 652 606" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
-
<path d="M353.554 0H298.446C273.006 0 249.684 14.6347 237.962 37.9539L4.37994 502.646C-1.04325 513.435 -1.45067 526.178 3.2716 537.313L22.6123 582.918C34.6475 611.297 72.5404 614.156 88.4414 587.885L309.863 222.063C313.34 216.317 319.439 212.826 326 212.826C332.561 212.826 338.659 216.317 342.137 222.063L563.559 587.885C579.46 614.156 617.352 611.297 629.388 582.918L648.728 537.313C653.451 526.178 653.043 513.435 647.62 502.646L414.038 37.9539C402.316 14.6347 378.994 0 353.554 0Z" fill="white"/>
|
|
3
|
-
</svg>
|
|
Binary file
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"fill" : {
|
|
3
|
-
"automatic-gradient" : "extended-srgb:0.00000,0.47843,1.00000,1.00000"
|
|
4
|
-
},
|
|
5
|
-
"groups" : [
|
|
6
|
-
{
|
|
7
|
-
"layers" : [
|
|
8
|
-
{
|
|
9
|
-
"image-name" : "expo-symbol 2.svg",
|
|
10
|
-
"name" : "expo-symbol 2",
|
|
11
|
-
"position" : {
|
|
12
|
-
"scale" : 1,
|
|
13
|
-
"translation-in-points" : [
|
|
14
|
-
1.1008400065293245e-05,
|
|
15
|
-
-16.046875
|
|
16
|
-
]
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
"image-name" : "grid.png",
|
|
21
|
-
"name" : "grid"
|
|
22
|
-
}
|
|
23
|
-
],
|
|
24
|
-
"shadow" : {
|
|
25
|
-
"kind" : "neutral",
|
|
26
|
-
"opacity" : 0.5
|
|
27
|
-
},
|
|
28
|
-
"translucency" : {
|
|
29
|
-
"enabled" : true,
|
|
30
|
-
"value" : 0.5
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
],
|
|
34
|
-
"supported-platforms" : {
|
|
35
|
-
"circles" : [
|
|
36
|
-
"watchOS"
|
|
37
|
-
],
|
|
38
|
-
"squares" : "shared"
|
|
39
|
-
}
|
|
40
|
-
}
|
/package/templates/expo-default-sdk55/assets/images/{expo-badge-white.png → wizze-badge-white.png}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|