@stacksjs/buddy 0.59.7 → 0.59.8

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 (3) hide show
  1. package/README.md +143 -135
  2. package/dist/stacks +0 -0
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- ![Social Card of Stacks](./art/social.jpg)
1
+ ![Social Card of Stacks](../../../../public/social.jpg)
2
2
 
3
3
  # Rapid App & Library Development
4
4
 
@@ -8,138 +8,64 @@
8
8
  [![npm downloads][npm-downloads-src]][npm-downloads-href]
9
9
  <!-- [![Codecov][codecov-src]][codecov-href] -->
10
10
 
11
- _Open Beta coming soon._
11
+ > [!WARNING]
12
+ > Stay tuned. Open Beta coming soon.
12
13
 
13
- The goal of the framework is to _help you_ create & maintain frontends, backends, and clouds—without having to worry about the boilerplate. Stacks is a rapid development framework, meeting all your full stack needs.
14
+ Stacks is a rapid development framework, where the goal is to _help you_ create & maintain frontends, backends, and clouds—without having to worry about the boilerplate. _An all-in-one toolkit that meets all your full stack needs._
14
15
 
15
- - Web & Desktop applications
16
- - Serverless & traditional APIs
17
- - Cloud infrastructure creation & maintenance
16
+ - Web & Desktop Applications _(including system tray apps)_
17
+ - Serverless & Traditional APIs
18
+ - Cloud Infrastructure Creation & Maintenance
18
19
  - Interactive CLIs
19
- - Framework-agnostic component & function libraries
20
+ - Framework-agnostic Component & Function Libraries
20
21
  - Deployment & Release Manager _(CI & CD)_
21
22
 
22
- Stacks helps you every step along the way—in beginner & expert-friendly ways, allowing you to focus on the _what_ and _why_ of your project.
23
+ In other words, Stacks helps you, as a developer, every step along the way—in beginner & expert-friendly ways, allowing you to focus on the _what & why_ of your project, all while enabling you to always stay in control & ownership of your _(& your user’s)_ data.
23
24
 
24
25
  > “Convention over configuration” is the Stacks mantra. _- Chris_
25
26
 
26
27
  <!-- ![Atomic UI & FX Design](./docs/assets/diagram.png) -->
27
28
 
28
- ## Features
29
-
30
- The Stacks framework is a harmony of several “engines” to build any web and/or desktop application, in highly scalable & privacy-friendly ways. It consists of the following engines:
31
-
32
- ### Stacks Frontend
33
-
34
- _Develop dynamic UIs with helpers for atomic design, and much more._
35
-
36
- - 🧩 **Components** _primitive to develop user interfaces_
37
- - 🤖 **Functions** _primitive to develop business logic (and grant your UI superpowers)_
38
- - 🎨 **UI Kit** _modern & deeply-integrated components_
39
- - 🌐 **Web** _“a routing & templating engine that makes sense”_
40
- - 🖥️ **Desktop** _automagically build a desktop app out of your web app_
41
- - 📚 **Library** _auto-builds component & function libraries_
42
- - ⚡️ Powered by Bun, Nitro, Tauri, UnoCSS, Vite & Vue
43
-
44
- ### Stacks Backend
45
-
46
- _Develop serverless (or server) functions with countless helpers to build scalable & fast APIs._
47
-
48
- - 🪄 **AI** _deep AI integrations & foundational model access_
49
- - 🤖 **APIs** _scalability & maintainability built-in_
50
- - 🏎️ **Cache** _Redis, DynamoDB, and more—serverless_
51
- - ⚙️ **CLIs** _create beautiful CLIs for Linux, Windows, and Mac—without requirements_
52
- - 📀 **Database** _SQLite, MySQL, Postgres, PlanetScale, and more_
53
- - 👾 **Errors** _native type-safe error handling_
54
- - 🗓️ **Events** _functional event (front & backend) communication_
55
- - 📢 **Notifications** _emails, SMSs, direct, and push notifications & webhooks_
56
- - 🗺️ **ORM** _supercharged, fully-typed models & relations (including automated migrations)_
57
- - 💳 **Payments** _unified API for one-off & subscription billing methods for Stripe_
58
- - ⚙️ **Queues** _run any heavy workload in the background_
59
- - 🛠️ **Query Builder** _powerful, type-safe SQL query builder_
60
- - 💬 **Realtime** _“everything you need to build dynamic real-time apps”_
61
- - 🧭 **Router** _smart routing, file-based or Laravel-like_
62
- - 🔎 **Search Engine** _smart searching, advanced filtering & sorting, pagination, headless UI_
63
- - 💾 **Storage** _a secure-by-default File API that feels right_
64
- - 🧪 **Tinker** _a powerful TypeScript REPL_
65
- - 🌪️ **Validation** _e2e type-safety (true frontend & backend harmony)_
66
- - 🎯 **X-Ray** _all you need to debug, log & analyze_
67
-
68
- ### Stacks Cloud
69
-
70
- _Create your personal or professional Vercel-like cloud, based on MIT-licensed OSS._
71
-
72
- - ☁️ **Server** _local development server & production-ready servers out-of-the-box_
73
- - ⛅️ **Serverless** _on-demand, auto-scaling, zero maintenance_
74
- - 🚏 **CDN** _zero-config, low-latency CDN, including request life-cycle hooks & optimized request compressions (Brotli & gzip)_
75
- - 🔀 **Domain** _version-controlled & zero-config domain management (e.g. DNS management)_
76
- - 🤖 **AI** _fine-tune a foundational model using your application data_
77
- - 📧 **Email** _secure & simplistic <easy-peasy@custom-domains.com> mailboxes_
78
- - 🔐 **Firewall** _native web application firewall support_
79
- - 📦 **Storage** _unlimited cloud storage & automatic backups_
80
- - 🚜 **Maintenance** _maintain your cloud infrastructure with ease using Buddy & Stacks_
81
- - 🚦 **Infrastructure as Code** _version-controlled cloud infrastructure_
82
-
83
- ### Stacks CI/CD
84
-
85
- _Focus on coding, not publishing._
86
-
87
- - 🚀 **Deployment Manager** _take the sweat out of production deployments (AWS, Google next?)_
88
- - 📫 **Release Manager** _libraries (component & function) auto-published to npm, git helpers, and more_
89
-
90
- ### Stacks DX
91
-
92
- _Enhanced productivity for developers. No more creating boilerplate._
93
-
94
- - 💡 **IDE Integration** _auto-completions, inline docs & a powerful VS Code setup_
95
- - 🪄 **Zero-Config** _yet highly configurable—convention over configuration_
96
- - 💅 **Linter & Formatter** _auto-configured & built into your IDE_
97
- - 💪🏼 **Type Strong** _built-in e2e type-safety_
98
- - ✨ **Git Workflows** _committing with ease_
99
- - 🚗 **Auto Imports** _your components & functions, including date, string, array, & object helpers_
100
- - ⏩ **Code Snippets** _say goodbye to the boilerplate—thank you Sarah Drasner_
101
- - 🔤 **Spell Checker** _be notified once there are typos_
102
- - 🛠️ **Utilities** _Collections, VueUse, and more_
103
- - 👥 **Team Management** _manage your team & their permissions_
104
- - 🧪 **Testing** _unit & e2e tests powered by Bun & Playwright_
105
-
106
- No matter whether you are a beginner or an expert, the approachable Stacks design allows you to learn at your own pace, using our thorough documentation covering every aspect of the framework. Stacks is extremely beginner & expert-friendly.
107
-
108
- Develop beautiful, reactive, composable UIs without learning a new set of languages. HTML, CSS, and minimal JavaScript—that's all you need to dive in now! _Or TypeScript ✌🏼_
109
-
110
- > _A true rapid application development framework for all Full Stack needs. Next-level simplicity & helpful DX._
111
-
112
29
  ## Get Started
113
30
 
114
- It's incredibly easy to get started with this framework. Simply run the following command in your terminal:
31
+ Its incredibly easy to get started with this framework. Simply run the following command in your terminal:
115
32
 
116
33
  ```bash
117
- curl -Ssf stacksjs.org | sh # wip
34
+ curl -Ssf stacksjs.org/install | sh # wip
118
35
 
119
- # alternatively, if Bun >= v1.0 is installed already,
36
+ # alternatively, if Bun >= v1.0.30 is installed already,
120
37
  # you may also get started via:
121
38
  bunx stacks new my-project
122
39
  ```
123
40
 
124
- ## 🤖 Usage
41
+ ## Usage
125
42
 
126
43
  The following list includes some of the most common ways to interact with the Stacks API.
127
44
 
128
- Meet the toolkit, Buddy:
45
+ _Meet the toolkit, Buddy:_
129
46
 
130
47
  ```bash
131
48
  buddy install # installs all dependencies
132
- buddy dev # starts one of the dev servers (components, functions, views, or docs)
49
+ buddy dev # starts one of the dev servers (frontend, API, components, docs, desktop, etc.)
50
+ buddy share # creates a sharable link of your local project
133
51
  buddy build # follow CLI prompts to select which library (or server) to build
134
52
  buddy commit # follow CLI prompts for committing changes
135
53
  buddy release # creates the releases for the stack & consequently, publishes them to npm
136
54
  buddy upgrade # auto-update all deps & the Stacks framework
137
55
 
138
- buddy make:model Car # scaffolds a model
139
- buddy make:component HelloWorld # scaffolds a component
140
- buddy make:function HelloWorld # scaffolds a function
141
- buddy make:view hello-world # scaffolds a page (https://my-project.test/hello-world)
142
-
56
+ buddy make:component HelloWorld # scaffolds a Component
57
+ buddy make:function HelloWorld # scaffolds a Function
58
+ buddy make:model Car # scaffolds a Model
59
+ buddy make:action UpdateCar # scaffolds an Action
60
+ buddy make:migration create_cars_table # scaffolds a Migration
61
+ buddy make:view Car # scaffolds a Page (https://my-project.test/car)
62
+ buddy make:command Inspire # scaffolds a Command
63
+ buddy make:job SendEmail # scaffolds a Job
64
+ buddy make:middleware Logger # scaffolds a new Middleware
65
+ buddy make:notification WelcomeEmail # scaffolds a Notification
66
+ buddy make:lang de # scaffolds a language file
67
+
68
+ buddy list # lists all available commands
143
69
  buddy --help
144
70
  ```
145
71
 
@@ -156,12 +82,16 @@ buddy install # installs dependencies
156
82
  buddy add # adds a stack or dependency
157
83
  buddy fresh # fresh reinstall of all deps
158
84
  buddy clean # removes all deps
85
+ buddy setup # sets up the project initially
86
+ buddy setup:oh-my-zsh # optional: sets up Oh My Zsh with auto-completions & "aliases"
159
87
 
160
88
  buddy upgrade # upgrades all dependencies
161
89
  buddy upgrade -i # prompts you to select which updates to apply (wip)
162
- buddy upgrade:dependencies # auto-upgrades deps & the Stacks framework
90
+ buddy upgrade:dependencies # auto-upgrades package.json deps
163
91
  buddy upgrade:framework # auto-upgrades deps & the Stacks framework
164
92
  buddy upgrade:search-engine # auto-upgrades configured search engine
93
+ buddy upgrade:shell # upgrades the shell integration
94
+ buddy upgrade:binary # upgrades the `stacks` binary
165
95
  buddy upgrade:bun # upgrades to latest project-defined Bun version
166
96
  buddy upgrade:all # auto-upgrades all of the above
167
97
 
@@ -169,7 +99,7 @@ buddy upgrade:all # auto-upgrades all of the above
169
99
  # any of them via the "help option", i.e. `buddy ... --help`
170
100
 
171
101
  buddy dev # starts the frontend dev server
172
- buddy dev -i # prompts any of the dev servers (components, functions, views, or docs)
102
+ buddy dev -i # prompts any of the dev servers (components, functions, views, docs, or api)
173
103
  buddy dev:api # starts the API dev server
174
104
  buddy dev:dashboard # starts the Admin/Dashboard dev server
175
105
  buddy dev:desktop # starts the Desktop dev server
@@ -177,9 +107,11 @@ buddy dev:views # starts frontend dev server
177
107
  buddy dev:components # starts component dev server
178
108
  buddy dev:functions # stubs functions
179
109
  buddy dev:docs # starts local docs dev server
180
- buddy dev docs # also starts the local docs dev server (colon is optional)
110
+ buddy dev docs # also starts the local docs dev server (colon is optional for all commands)
181
111
  buddy development # `buddy dev` alias
182
112
 
113
+ buddy share # creates a sharable link to your local project
114
+
183
115
  # for Laravel folks, `serve` may ring more familiar than the `dev` name. Hence, we aliased it:
184
116
  buddy serve
185
117
  buddy serve:components
@@ -272,8 +204,9 @@ buddy example # prompts you to select which example to run
272
204
  buddy example:vue # runs the Vue example
273
205
  buddy example:web-components # runs the Web Component example
274
206
 
275
- # you likely won't need to run these commands as they are auto-triggered, but they are available
207
+ # you likely wont need to run these commands as they are auto-triggered, but they are available
276
208
  buddy generate # prompts you to select which generator to run
209
+ buddy generate:types # generates types for your components, functions, & views
277
210
  buddy generate:entries # generates entry files for components, functions, & views
278
211
  buddy generate:web-types # generates Web Component types
279
212
  buddy generate:vscode-custom-data # generates VSCode custom data
@@ -305,49 +238,116 @@ buddy test:types # runs typecheck
305
238
  stx fresh
306
239
  buddy fresh
307
240
  bud fresh
308
- buddy fresh
309
241
  ```
310
242
 
311
243
  </details>
312
244
 
313
245
  Read more here about the Stacks CLI in the documentation.
314
246
 
315
- ## 🎯 Roadmap
247
+ ## Features
316
248
 
317
- Part of the Stacks ecosystem are the following first-party supported stacks:
249
+ The Stacks framework is a harmony of several “engines” to build any web and/or desktop application, in highly scalable & privacy-friendly ways. It consists of the following engines:
318
250
 
319
- - [Table](https://github.com/stacksjs/stacks/tree/main/storage/framework/core/stacks/tables) (Data tables with ease)
320
- - [Calendar](https://github.com/stacksjs/calendar) (Add to Calendar utilities—iCal, Google, and more)
321
- - [Command Palette](https://github.com/stacksjs/command-palette) (`⌘ + k` for the web)
322
- - [Date Picker](https://github.com/stacksjs/date-picker) (Beautiful, modern date picker)
323
- - [File Manager](https://github.com/stacksjs/file-manager) (Build your own file manager—like Dropbox or Google Drive)
324
- - [Image](https://github.com/stacksjs/image) (Modern image experience)
325
- - [Video](https://github.com/stacksjs/video) (Modern video experience)
326
- - [Audio](https://github.com/stacksjs/audio) (Modern audio experience)
327
- - [Identity](https://github.com/stacksjs/identity) (Identity providers)
328
- - [Digital Ownership](https://github.com/stacksjs/ownership) (Public ownership protocol integrations)
329
- - [Payments](https://github.com/stacksjs/payments) (Unified payment & wallet APIs)
330
- - [Governance](https://github.com/stacksjs/governance) (Powerful toolkit for democratic governance)
251
+ ### Frontend Development
331
252
 
332
- View our detailed roadmap/s [here](https://github.com/stacksjs/stacks/projects?query=is%3Aopen), for more information. Additionally, you may find interesting stacks, information & examples over at [Awesome Stacks](https://github.com/stacksjs/awesome-stacks).
253
+ _Develop dynamic UIs with helpers for atomic design, and much more._
333
254
 
334
- While we currently only fully support `us-east-1`, we are looking forward to expanding to other regions soon.
255
+ - 🧩 **Components** _primitive to develop user interfaces_
256
+ - 🤖 **Functions** _primitive to develop business logic (and grant your UI superpowers)_
257
+ - 🎨 **UI Kit** _modern & deeply-integrated components_
258
+ - 🌐 **Web** _“a routing & templating engine that makes sense”_
259
+ - 🖥️ **Desktop** _transforms your web app into a desktop app, plus more_
260
+ - 📝 **Documentation** _markdown-based documentation, auto-generated_
261
+ - 📚 **Library** _auto-builds & manages component & function libraries_
262
+ - ⚡️ Powered by Bun, Nitro, Tauri, UnoCSS, Vite & Vue
263
+
264
+ ### Backend Development
335
265
 
336
- ## 🧪 Testing
266
+ _Develop serverless (or server) functions with countless helpers to build scalable & fast APIs._
267
+
268
+ - 🪄 **AI** _deep AI integrations & foundational model access_
269
+ - 🤖 **APIs** _scalability & maintainability built-in_
270
+ - 🏎️ **Cache** _Redis, DynamoDB, and more—serverless_
271
+ - ⚙️ **CLIs** _create beautiful CLIs for Linux, Windows, and Mac (dependency-free binaries)_
272
+ - 📀 **Database** _SQLite, MySQL, Postgres, and more_
273
+ - 👾 **Errors** _native type-safe error handling_
274
+ - 🗓️ **Events** _functional event (front & backend) communication_
275
+ - 📢 **Notifications** _emails, SMSs, direct, and push notifications & webhooks_
276
+ - 🗺️ **ORM** _supercharged, fully-typed models & relations (including automated migrations)_
277
+ - 💳 **Payments** _unified API for one-off & subscription billing methods for Stripe_
278
+ - ⚙️ **Queues** _run any heavy workload in the background_
279
+ - 🛠️ **Query Builder** _powerful, type-safe SQL query builder_
280
+ - 💬 **Realtime** _“everything you need to build dynamic real-time apps”_
281
+ - 🧭 **Router** _smart routing, file-based or Laravel-like_
282
+ - 🔎 **Search Engine** _smart searching, advanced filtering & sorting, pagination, headless UI_
283
+ - 💾 **Storage** _a secure-by-default File API that feels right_
284
+ - 🧪 **Tinker** _a powerful TypeScript REPL_
285
+ - 🌪️ **Validation** _e2e type-safety (true frontend & backend harmony)_
286
+ - 🎯 **X-Ray** _all you need to debug, log & analyze_
287
+
288
+ ### Cloud Development
289
+
290
+ _Develop & maintain cloud infrastructure with ease. “Imagine Vercel, Vapor and Forge having been unified.”_
291
+
292
+ - ☁️ **Server** _local development server & production-ready servers out-of-the-box_
293
+ - ⛅️ **Serverless** _on-demand, auto-scaling, zero maintenance_
294
+ - ⏰ **Alarms** _built-in cloud infrastructure monitoring to avoid surprises_
295
+ - 🚏 **CDN** _zero-config, low-latency, request life-cycle hooks, optimized request compressions (Brotli & gzip)_
296
+ - 🔀 **Domain** _version-controlled & zero-config domain management (e.g. DNS management)_
297
+ - 🤖 **AI** _fine-tune a foundational model using your application data_
298
+ - 📧 **Email** _secure & zero-setup <easy-peasy@custom-domains.com> mailboxes_
299
+ - 🔐 **Firewall** _native web application firewall support_
300
+ - 📦 **Storage** _unlimited cloud storage & automatic backups_
301
+ - 🚜 **Maintenance** _maintain your cloud infrastructure with ease using Buddy & Stacks_
302
+ - 🚦 **Infrastructure as Code** _version-controlled cloud infrastructure (AWS, Google next?)_
303
+
304
+ ### CI/CD
305
+
306
+ _Focus on coding, not publishing._
307
+
308
+ - 🚀 **Deployment Manager** _takes the sweat out of production deployments—zero-setup push-to-deploy_
309
+ - 0️⃣ **Zero Downtime** _deploy with confidence using a zero-downtime deployment strategy_
310
+ - 📫 **Release Manager** _libraries (component & function) auto-published to npm, git helpers, and more_
311
+
312
+ ### Developer Experience (DX)
313
+
314
+ Convention over configuration, while staying wholly configurable. _No more boilerplate._
315
+
316
+ - 💎 **Automated Upgrades** _no need to worry about upgrading to the latest versions, Stacks upgrades you_
317
+ - 🦋 **Pretty Dev URLs** _your-project.localhost instead of localhost:3000_
318
+ - 💡 **IDE Integration** _auto-completions, inline docs & a powerful VS Code setup_
319
+ - 🪄 **Zero-Config** _yet highly configurable—convention over configuration_
320
+ - 💅 **Linter & Formatter** _auto-configured & built into your IDE_
321
+ - 💪🏼 **Type Strong** _built-in e2e type-safety_
322
+ - ✨ **Git Workflows** _committing with ease_
323
+ - 🚗 **Auto Imports** _your components & functions, including date, string, array, & object helpers_
324
+ - ⏩ **Code Snippets** _goodbye to the boilerplate code—thank you Sarah Drasner_
325
+ - 🔤 **Spell Checker** _be notified once there are typos_
326
+ - 🛠️ **Essential Utilities** _powers at your fingertips. Collections, VueUse, and more_
327
+ - 👥 **Team Management** _manage your team & their permissions_
328
+ - 🧪 **Streamlined Testing** _unit & e2e tests powered by Bun, Vitest & Playwright_
329
+
330
+ No matter whether you are a beginner or an expert, the approachable Stacks design allows you to learn at your own pace, using our thorough documentation covering every aspect of the framework. Stacks is extremely beginner & expert-friendly.
331
+
332
+ Develop beautiful, reactive, composable UIs without learning a new set of languages. HTML, CSS, and minimal JavaScript—that’s all you need to dive in now! _Or TypeScript ✌🏼_
333
+
334
+ > _An actual rapid application development framework for all Full Stack needs. Next-level simplicity & DX._
335
+
336
+ ## Testing
337
337
 
338
338
  ```bash
339
- bun test
339
+ ./buddy test
340
340
  ```
341
341
 
342
- ## 📈 Changelog
342
+ ## Changelog
343
343
 
344
344
  Please see our [releases](https://github.com/stacksjs/stacks/releases) page for more information on what has changed recently.
345
345
 
346
- ## 🚜 Contributing
346
+ ## Contributing
347
347
 
348
348
  Please see the [Contributing Guide](https://github.com/stacksjs/contributing) for details.
349
349
 
350
- ## 🏝 Community
350
+ ## Community
351
351
 
352
352
  For help, discussion about best practices, or any other conversation that would benefit from being searchable:
353
353
 
@@ -357,19 +357,27 @@ For casual chit-chat with others using this package:
357
357
 
358
358
  [Join the Stacks Discord Server](https://discord.gg/stacksjs)
359
359
 
360
- ## 📄 Sponsors
360
+ ## Postcardware
361
361
 
362
- Once we launch a usable Stacks version, we hope people will start enjoying it! Coming soon.
362
+ Two things are true: Stacks OSS will always stay open-source, and we do/would love to receive postcards from wherever Stacks is used! 🌍 _And we also publish them on our website. -Thank you, Spatie_
363
363
 
364
- ## 🙏🏼 Credits
364
+ Our address: Stacks.js, 5710 Crescent Park #107, Playa Vista 90094, CA, USA
365
365
 
366
- Many thanks to the following core technologies & people who have contributed to this package:
366
+ ## Sponsors
367
+
368
+ We would like to extend our thanks to the following sponsors for funding Stacks development. If you are interested in becoming a sponsor, please reach out to us.
369
+
370
+ - [JetBrains](https://www.jetbrains.com/)
371
+ - [The Solana Foundation](https://solana.com/)
372
+
373
+ ## Credits
367
374
 
368
375
  - [Chris Breuer](https://github.com/chrisbbreuer)
369
- - [Dan Scanlon](https://twitter.com/danscan) _many thanks for donating the `stacks` name on npm_
370
376
  - [All Contributors](../../contributors)
371
377
 
372
- ## 📄 License
378
+ And a special thanks to [Dan Scanlon](https://twitter.com/danscan) for donating the `stacks` name on npm ✨
379
+
380
+ ## License
373
381
 
374
382
  The MIT License (MIT). Please see [LICENSE](LICENSE.md) for more information.
375
383
 
package/dist/stacks CHANGED
Binary file
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stacksjs/buddy",
3
3
  "type": "module",
4
- "version": "0.59.7",
4
+ "version": "0.59.8",
5
5
  "description": "Meet Buddy. The Stacks runtime.",
6
6
  "author": "Chris Breuer",
7
7
  "license": "MIT",