@exanderal/stackcraft 0.3.0 → 0.3.1

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.
Files changed (2) hide show
  1. package/README.md +14 -3
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -18,7 +18,8 @@ Follow the prompts — you'll have an Nx monorepo with deps installed and ready
18
18
  your-project/
19
19
  ├── apps/
20
20
  │ ├── backend/ # NestJS REST or GraphQL API
21
- └── web/ # Vite + React or Next.js
21
+ ├── web/ # Vite + React or Next.js
22
+ │ └── mobile/ # Expo (optional)
22
23
  ├── packages/
23
24
  │ └── types/ # auto-generated types shared across all apps
24
25
  └── tools/
@@ -51,6 +52,13 @@ src/
51
52
  - TypeScript
52
53
  - GraphQL projects: Apollo Client pre-configured, `ApolloProvider` already wired at the app root
53
54
 
55
+ ### Mobile (`apps/mobile`) — optional
56
+
57
+ - Expo with Expo Router (file-based navigation)
58
+ - React Native
59
+ - `@local/types` already wired — import shared types directly
60
+ - GraphQL projects: Apollo Client added automatically
61
+
54
62
  ### Types (`packages/types`)
55
63
 
56
64
  Auto-generated TypeScript types shared across all apps — import from `@local/types/rest` or `@local/types/graphql`:
@@ -88,9 +96,10 @@ Generate a new domain module (model + repository + service):
88
96
 
89
97
  ```sh
90
98
  pnpm generate:module --name=trainer
91
- pnpm generate:module --name=trainer --graphql # adds @ObjectType() to the model
92
99
  ```
93
100
 
101
+ You'll be prompted whether to add `@ObjectType()` to the model (required for GraphQL resolvers). Pass `--graphql` to skip the prompt.
102
+
94
103
  Generate a REST controller:
95
104
 
96
105
  ```sh
@@ -137,6 +146,7 @@ const { data, loading } = useGetTrainersQuery()
137
146
  | Backend | NestJS, TypeORM |
138
147
  | Database | PostgreSQL or MySQL |
139
148
  | Frontend | Vite + React or Next.js |
149
+ | Mobile | Expo + Expo Router |
140
150
  | Styles | Tailwind CSS v4 |
141
151
  | GraphQL client | Apollo Client |
142
152
  | REST types | @hey-api/openapi-ts |
@@ -151,7 +161,8 @@ const { data, loading } = useGetTrainersQuery()
151
161
  - [x] `codegen:watch` for live type generation during dev
152
162
  - [x] Apollo Client pre-configured in GraphQL projects
153
163
  - [x] Typed Apollo hooks from `.graphql` operation files
154
- - [ ] Expo mobile
164
+ - [x] Expo mobile with Expo Router
165
+ - [x] Interactive `generate:module` prompt
155
166
  - [ ] `stackcraft add` addon system (auth, Supabase, etc.)
156
167
  - [ ] Presets and `--config` for non-interactive use
157
168
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exanderal/stackcraft",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "Opinionated full-stack project scaffolding CLI",
5
5
  "type": "module",
6
6
  "bin": {