archyra 1.0.0
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/LICENSE +21 -0
- package/README.md +399 -0
- package/dist/index.css +820 -0
- package/dist/index.d.ts +237 -0
- package/dist/index.js +11094 -0
- package/dist/index.mjs +11075 -0
- package/dist/mcp/cli.js +274 -0
- package/dist/mcp/server.js +25509 -0
- package/dist/styles.css +638 -0
- package/mcp/cli.ts +326 -0
- package/mcp/registry.ts +5835 -0
- package/mcp/server.ts +363 -0
- package/package.json +116 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 AI Animation Framework Contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,399 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="https://img.shields.io/npm/v/archyra?style=for-the-badge&color=6366f1" alt="npm version" />
|
|
3
|
+
<img src="https://img.shields.io/npm/dm/archyra?style=for-the-badge&color=22c55e" alt="downloads" />
|
|
4
|
+
<img src="https://img.shields.io/badge/license-MIT-blue?style=for-the-badge" alt="license" />
|
|
5
|
+
<img src="https://img.shields.io/badge/TypeScript-Ready-3178c6?style=for-the-badge&logo=typescript&logoColor=white" alt="typescript" />
|
|
6
|
+
</p>
|
|
7
|
+
|
|
8
|
+
<h1 align="center">Archyra</h1>
|
|
9
|
+
|
|
10
|
+
<p align="center">
|
|
11
|
+
<strong>The Complete AI Coding Toolkit</strong><br/>
|
|
12
|
+
Beautiful animated React components + AWS Architecture Designer with IaC generation
|
|
13
|
+
</p>
|
|
14
|
+
|
|
15
|
+
<p align="center">
|
|
16
|
+
<a href="#features">Features</a> •
|
|
17
|
+
<a href="#ui-components">UI Components</a> •
|
|
18
|
+
<a href="#architecture-designer">Architecture Designer</a> •
|
|
19
|
+
<a href="#mcp-server">MCP Server</a> •
|
|
20
|
+
<a href="#cli">CLI</a>
|
|
21
|
+
</p>
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Features
|
|
26
|
+
|
|
27
|
+
| Feature | Count | Description |
|
|
28
|
+
|---------|-------|-------------|
|
|
29
|
+
| **UI Components** | 25 | Production-ready React components with Framer Motion |
|
|
30
|
+
| **AWS Services** | 20 | Drag-and-drop cloud architecture designer |
|
|
31
|
+
| **IaC Generators** | 3 | Terraform, Pulumi TypeScript, Pulumi Python |
|
|
32
|
+
| **MCP Integration** | 3 | Claude, Cursor, Windsurf support |
|
|
33
|
+
| **Output Formats** | 2 | React + Vanilla HTML/CSS/JS |
|
|
34
|
+
|
|
35
|
+
### Key Capabilities
|
|
36
|
+
|
|
37
|
+
- **25 Animated UI Components** - Loading states, e-commerce, chat, auth, visual effects
|
|
38
|
+
- **AWS Architecture Designer** - Visual drag-and-drop cloud infrastructure design
|
|
39
|
+
- **Infrastructure as Code** - Export to Terraform or Pulumi (TypeScript/Python)
|
|
40
|
+
- **MCP Server** - Direct AI assistant integration (Claude, Cursor, Windsurf)
|
|
41
|
+
- **Dual Format** - React/Framer Motion + Vanilla HTML/CSS/JS
|
|
42
|
+
- **TypeScript First** - Full type definitions included
|
|
43
|
+
- **VPC Support** - Design complete network architectures with subnets
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Installation
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
npm install archyra framer-motion lucide-react
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## UI Components
|
|
56
|
+
|
|
57
|
+
### 25 Production-Ready Components
|
|
58
|
+
|
|
59
|
+
#### Loading (5 components)
|
|
60
|
+
|
|
61
|
+
| Component | Description |
|
|
62
|
+
|-----------|-------------|
|
|
63
|
+
| `LoadingDots` | Animated bouncing dots |
|
|
64
|
+
| `Skeleton` | Content placeholder (text, avatar, card, image) |
|
|
65
|
+
| `Shimmer` | Shimmer loading effect |
|
|
66
|
+
| `ProgressBar` | Animated progress (default, gradient, striped, glow) |
|
|
67
|
+
| `PulseCircle` | Circular progress with pulse rings |
|
|
68
|
+
|
|
69
|
+
#### Creative / AI (3 components)
|
|
70
|
+
|
|
71
|
+
| Component | Description |
|
|
72
|
+
|-----------|-------------|
|
|
73
|
+
| `AiCreating` | Multi-stage AI robot animation |
|
|
74
|
+
| `AiCreating2` | AI brain with rotating rings |
|
|
75
|
+
| `CodeTyping` | Terminal code typing effect |
|
|
76
|
+
|
|
77
|
+
#### Processing (1 component)
|
|
78
|
+
|
|
79
|
+
| Component | Description |
|
|
80
|
+
|-----------|-------------|
|
|
81
|
+
| `DataProcessing` | Data pipeline visualization |
|
|
82
|
+
|
|
83
|
+
#### Auth (1 component)
|
|
84
|
+
|
|
85
|
+
| Component | Description |
|
|
86
|
+
|-----------|-------------|
|
|
87
|
+
| `FloatingLogin` | Animated login form with OAuth |
|
|
88
|
+
|
|
89
|
+
#### Chat (3 components)
|
|
90
|
+
|
|
91
|
+
| Component | Description |
|
|
92
|
+
|-----------|-------------|
|
|
93
|
+
| `ChatBubble` | Message bubble with status indicators |
|
|
94
|
+
| `ChatTyping` | Typing indicator (dots, pulse, wave) |
|
|
95
|
+
| `ChatMessage` | Full chat message with avatar |
|
|
96
|
+
|
|
97
|
+
#### E-Commerce (5 components)
|
|
98
|
+
|
|
99
|
+
| Component | Description |
|
|
100
|
+
|-----------|-------------|
|
|
101
|
+
| `ProductCard` | 3D product card with hover effects |
|
|
102
|
+
| `AddToCartButton` | Animated cart button with price |
|
|
103
|
+
| `WishlistHeart` | Heart with particle burst animation |
|
|
104
|
+
| `FlashSaleTimer` | Countdown timer with urgency styling |
|
|
105
|
+
| `CartNotification` | Flying product notification |
|
|
106
|
+
|
|
107
|
+
#### Visual Effects (7 components)
|
|
108
|
+
|
|
109
|
+
| Component | Description |
|
|
110
|
+
|-----------|-------------|
|
|
111
|
+
| `GlowButton` | Button with animated glow effect |
|
|
112
|
+
| `SpotlightCard` | Card with mouse-following spotlight |
|
|
113
|
+
| `AuroraBackground` | Animated aurora gradient background |
|
|
114
|
+
| `AnimatedBeam` | Animated connecting beam between elements |
|
|
115
|
+
| `Card3D` | 3D tilt card with glare effect |
|
|
116
|
+
| `NeonGradientCard` | Card with rotating neon gradient border |
|
|
117
|
+
| `InfiniteCarousel` | Infinite scrolling carousel |
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## Architecture Designer
|
|
122
|
+
|
|
123
|
+
### Visual AWS Infrastructure Design
|
|
124
|
+
|
|
125
|
+
Design cloud architectures visually and export production-ready Infrastructure as Code.
|
|
126
|
+
|
|
127
|
+
### 20 AWS Services Supported
|
|
128
|
+
|
|
129
|
+
| Category | Services |
|
|
130
|
+
|----------|----------|
|
|
131
|
+
| **Compute** | EC2, Lambda, ECS |
|
|
132
|
+
| **Storage** | S3 |
|
|
133
|
+
| **Database** | RDS, DynamoDB, ElastiCache |
|
|
134
|
+
| **Networking** | VPC, CloudFront, Route53, API Gateway, ALB, NLB, NAT Gateway |
|
|
135
|
+
| **Security** | IAM, Cognito |
|
|
136
|
+
| **Integration** | SNS, SQS |
|
|
137
|
+
| **VPC Components** | VPC Environment, Public Subnet, Private Subnet |
|
|
138
|
+
|
|
139
|
+
### Infrastructure as Code Export
|
|
140
|
+
|
|
141
|
+
| Format | Languages | Output Files |
|
|
142
|
+
|--------|-----------|--------------|
|
|
143
|
+
| **Terraform** | HCL | `main.tf`, `variables.tf`, `outputs.tf`, modules |
|
|
144
|
+
| **Pulumi** | TypeScript | `index.ts`, `Pulumi.yaml`, `package.json` |
|
|
145
|
+
| **Pulumi** | Python | `__main__.py`, `Pulumi.yaml`, `requirements.txt` |
|
|
146
|
+
|
|
147
|
+
### Architecture Features
|
|
148
|
+
|
|
149
|
+
- **Drag & Drop** - Visual service placement
|
|
150
|
+
- **Auto-connections** - Smart service linking
|
|
151
|
+
- **VPC Designer** - Complete network architecture with subnets
|
|
152
|
+
- **Property Editor** - Configure each service (instance types, runtimes, etc.)
|
|
153
|
+
- **Real-time Preview** - See IaC code as you design
|
|
154
|
+
- **ZIP Export** - Download complete project structure
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## Quick Start
|
|
159
|
+
|
|
160
|
+
### UI Components
|
|
161
|
+
|
|
162
|
+
```tsx
|
|
163
|
+
import { LoadingDots, ChatBubble, ProductCard } from 'archyra';
|
|
164
|
+
|
|
165
|
+
function App() {
|
|
166
|
+
return (
|
|
167
|
+
<div>
|
|
168
|
+
<LoadingDots size="md" color="#6366f1" />
|
|
169
|
+
|
|
170
|
+
<ChatBubble
|
|
171
|
+
message="Hello!"
|
|
172
|
+
variant="sender"
|
|
173
|
+
color="blue"
|
|
174
|
+
/>
|
|
175
|
+
|
|
176
|
+
<ProductCard
|
|
177
|
+
name="Premium Headphones"
|
|
178
|
+
price={299}
|
|
179
|
+
rating={4.8}
|
|
180
|
+
onAddToCart={() => console.log('Added!')}
|
|
181
|
+
/>
|
|
182
|
+
</div>
|
|
183
|
+
);
|
|
184
|
+
}
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### Architecture Designer
|
|
188
|
+
|
|
189
|
+
```tsx
|
|
190
|
+
// The Architecture Designer is a full-page application
|
|
191
|
+
// Access it at /designer in the gallery
|
|
192
|
+
|
|
193
|
+
// Export options:
|
|
194
|
+
// 1. Terraform HCL
|
|
195
|
+
// 2. Pulumi TypeScript
|
|
196
|
+
// 3. Pulumi Python
|
|
197
|
+
// 4. ZIP download with all files
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Component Examples
|
|
203
|
+
|
|
204
|
+
### AiCreating2
|
|
205
|
+
|
|
206
|
+
```tsx
|
|
207
|
+
import { AiCreating2 } from 'archyra';
|
|
208
|
+
|
|
209
|
+
<AiCreating2
|
|
210
|
+
isLoading={true}
|
|
211
|
+
message="Creating your design..."
|
|
212
|
+
primaryColor="#6366f1"
|
|
213
|
+
backgroundColor="#0f172a"
|
|
214
|
+
contained={true}
|
|
215
|
+
onComplete={() => console.log('Done!')}
|
|
216
|
+
/>
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
### ChatBubble
|
|
220
|
+
|
|
221
|
+
```tsx
|
|
222
|
+
import { ChatBubble } from 'archyra';
|
|
223
|
+
|
|
224
|
+
<ChatBubble
|
|
225
|
+
message="Hey, how are you?"
|
|
226
|
+
variant="sender"
|
|
227
|
+
color="blue"
|
|
228
|
+
timestamp="2:30 PM"
|
|
229
|
+
status="delivered"
|
|
230
|
+
/>
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
### ProductCard
|
|
234
|
+
|
|
235
|
+
```tsx
|
|
236
|
+
import { ProductCard } from 'archyra';
|
|
237
|
+
|
|
238
|
+
<ProductCard
|
|
239
|
+
image="/product.jpg"
|
|
240
|
+
name="Wireless Earbuds"
|
|
241
|
+
price={149}
|
|
242
|
+
originalPrice={199}
|
|
243
|
+
rating={4.5}
|
|
244
|
+
reviews={128}
|
|
245
|
+
badge="Sale"
|
|
246
|
+
onAddToCart={() => handleAdd()}
|
|
247
|
+
/>
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
### FlashSaleTimer
|
|
251
|
+
|
|
252
|
+
```tsx
|
|
253
|
+
import { FlashSaleTimer } from 'archyra';
|
|
254
|
+
|
|
255
|
+
<FlashSaleTimer
|
|
256
|
+
endTime={new Date('2024-12-31')}
|
|
257
|
+
title="Flash Sale Ends In"
|
|
258
|
+
discount={50}
|
|
259
|
+
variant="urgent"
|
|
260
|
+
onEnd={() => console.log('Sale ended!')}
|
|
261
|
+
/>
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
## MCP Server
|
|
267
|
+
|
|
268
|
+
Archyra includes an MCP (Model Context Protocol) server for AI assistant integration.
|
|
269
|
+
|
|
270
|
+
### Quick Setup
|
|
271
|
+
|
|
272
|
+
```bash
|
|
273
|
+
# Interactive mode
|
|
274
|
+
npx archyra init
|
|
275
|
+
|
|
276
|
+
# Or specify directly
|
|
277
|
+
npx archyra init --client claude
|
|
278
|
+
npx archyra init --client cursor
|
|
279
|
+
npx archyra init --client windsurf
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
### Supported AI Tools
|
|
283
|
+
|
|
284
|
+
| Tool | Config Location |
|
|
285
|
+
|------|-----------------|
|
|
286
|
+
| **Claude Code** | `~/.claude/claude_desktop_config.json` or `~/.mcp.json` |
|
|
287
|
+
| **Cursor** | `.cursor/mcp.json` or `~/.cursor/mcp.json` |
|
|
288
|
+
| **Windsurf** | `~/.codeium/windsurf/mcp_config.json` |
|
|
289
|
+
|
|
290
|
+
### Manual Configuration
|
|
291
|
+
|
|
292
|
+
```json
|
|
293
|
+
{
|
|
294
|
+
"mcpServers": {
|
|
295
|
+
"archyra": {
|
|
296
|
+
"command": "npx",
|
|
297
|
+
"args": ["-y", "archyra@latest", "serve"]
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
### MCP Tools
|
|
304
|
+
|
|
305
|
+
| Tool | Description |
|
|
306
|
+
|------|-------------|
|
|
307
|
+
| `list_components` | List all 25 components with filtering |
|
|
308
|
+
| `get_component` | Get component details, props, and source |
|
|
309
|
+
| `add_component` | Get instructions to add a component |
|
|
310
|
+
| `get_install_command` | Get npm install command |
|
|
311
|
+
|
|
312
|
+
### Usage Examples
|
|
313
|
+
|
|
314
|
+
- *"List all animation components"*
|
|
315
|
+
- *"Add the LoadingDots component to my project"*
|
|
316
|
+
- *"Show me the AiCreating2 component in vanilla HTML"*
|
|
317
|
+
- *"What props does FlashSaleTimer accept?"*
|
|
318
|
+
|
|
319
|
+
---
|
|
320
|
+
|
|
321
|
+
## Vanilla HTML/CSS
|
|
322
|
+
|
|
323
|
+
Every UI component has a vanilla HTML/CSS/JS version - no React or npm required!
|
|
324
|
+
|
|
325
|
+
```
|
|
326
|
+
"Show me the LoadingDots component in vanilla format"
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
**HTML:**
|
|
330
|
+
```html
|
|
331
|
+
<div class="loading-dots">
|
|
332
|
+
<span></span>
|
|
333
|
+
<span></span>
|
|
334
|
+
<span></span>
|
|
335
|
+
</div>
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
**CSS:**
|
|
339
|
+
```css
|
|
340
|
+
.loading-dots {
|
|
341
|
+
display: flex;
|
|
342
|
+
gap: 8px;
|
|
343
|
+
}
|
|
344
|
+
.loading-dots span {
|
|
345
|
+
width: 12px;
|
|
346
|
+
height: 12px;
|
|
347
|
+
background: #6366f1;
|
|
348
|
+
border-radius: 50%;
|
|
349
|
+
animation: bounce 1.4s infinite ease-in-out;
|
|
350
|
+
}
|
|
351
|
+
.loading-dots span:nth-child(1) { animation-delay: -0.32s; }
|
|
352
|
+
.loading-dots span:nth-child(2) { animation-delay: -0.16s; }
|
|
353
|
+
|
|
354
|
+
@keyframes bounce {
|
|
355
|
+
0%, 80%, 100% { transform: scale(0); }
|
|
356
|
+
40% { transform: scale(1); }
|
|
357
|
+
}
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
---
|
|
361
|
+
|
|
362
|
+
## CLI
|
|
363
|
+
|
|
364
|
+
```bash
|
|
365
|
+
npx archyra --help # Show help
|
|
366
|
+
npx archyra init # Interactive MCP setup
|
|
367
|
+
npx archyra init --client X # Direct setup for specific client
|
|
368
|
+
npx archyra serve # Start MCP server manually
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
---
|
|
372
|
+
|
|
373
|
+
## Summary
|
|
374
|
+
|
|
375
|
+
| Category | Details |
|
|
376
|
+
|----------|---------|
|
|
377
|
+
| **UI Components** | 25 animated React components |
|
|
378
|
+
| **Component Categories** | Loading, Creative/AI, Chat, E-Commerce, Auth, Visual Effects |
|
|
379
|
+
| **AWS Services** | 20 services across Compute, Storage, Database, Networking, Security, Integration |
|
|
380
|
+
| **IaC Output** | Terraform HCL, Pulumi TypeScript, Pulumi Python |
|
|
381
|
+
| **MCP Support** | Claude Code, Cursor, Windsurf |
|
|
382
|
+
| **Output Formats** | React/Framer Motion, Vanilla HTML/CSS/JS |
|
|
383
|
+
|
|
384
|
+
---
|
|
385
|
+
|
|
386
|
+
## License
|
|
387
|
+
|
|
388
|
+
MIT
|
|
389
|
+
|
|
390
|
+
---
|
|
391
|
+
|
|
392
|
+
## Author
|
|
393
|
+
|
|
394
|
+
**johnbekele**
|
|
395
|
+
|
|
396
|
+
## Links
|
|
397
|
+
|
|
398
|
+
- [npm Package](https://www.npmjs.com/package/archyra)
|
|
399
|
+
- [GitHub Repository](https://github.com/johnbekele/Archyra)
|