@mytechtoday/augment-extensions 0.2.0 → 0.4.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/README.md +614 -39
- package/augment-extensions/coding-standards/bash/README.md +196 -0
- package/augment-extensions/coding-standards/bash/module.json +163 -0
- package/augment-extensions/coding-standards/bash/rules/naming-conventions.md +336 -0
- package/augment-extensions/coding-standards/bash/rules/universal-standards.md +289 -0
- package/augment-extensions/coding-standards/css/README.md +40 -0
- package/augment-extensions/coding-standards/css/examples/css-examples.css +550 -0
- package/augment-extensions/coding-standards/css/module.json +44 -0
- package/augment-extensions/coding-standards/css/rules/css-modern-features.md +448 -0
- package/augment-extensions/coding-standards/css/rules/css-standards.md +492 -0
- package/augment-extensions/coding-standards/html/README.md +40 -0
- package/augment-extensions/coding-standards/html/examples/html-examples.html +267 -0
- package/augment-extensions/coding-standards/html/examples/responsive-layout.html +505 -0
- package/augment-extensions/coding-standards/html/module.json +44 -0
- package/augment-extensions/coding-standards/html/rules/html-standards.md +349 -0
- package/augment-extensions/coding-standards/html-css-js/README.md +194 -0
- package/augment-extensions/coding-standards/html-css-js/examples/async-examples.js +487 -0
- package/augment-extensions/coding-standards/html-css-js/examples/css-examples.css +550 -0
- package/augment-extensions/coding-standards/html-css-js/examples/dom-examples.js +667 -0
- package/augment-extensions/coding-standards/html-css-js/examples/html-examples.html +267 -0
- package/augment-extensions/coding-standards/html-css-js/examples/javascript-examples.js +612 -0
- package/augment-extensions/coding-standards/html-css-js/examples/responsive-layout.html +505 -0
- package/augment-extensions/coding-standards/html-css-js/module.json +48 -0
- package/augment-extensions/coding-standards/html-css-js/rules/async-patterns.md +515 -0
- package/augment-extensions/coding-standards/html-css-js/rules/css-modern-features.md +448 -0
- package/augment-extensions/coding-standards/html-css-js/rules/css-standards.md +492 -0
- package/augment-extensions/coding-standards/html-css-js/rules/dom-manipulation.md +439 -0
- package/augment-extensions/coding-standards/html-css-js/rules/html-standards.md +349 -0
- package/augment-extensions/coding-standards/html-css-js/rules/javascript-standards.md +486 -0
- package/augment-extensions/coding-standards/html-css-js/rules/performance.md +463 -0
- package/augment-extensions/coding-standards/html-css-js/rules/tooling.md +543 -0
- package/augment-extensions/coding-standards/js/README.md +46 -0
- package/augment-extensions/coding-standards/js/examples/async-examples.js +487 -0
- package/augment-extensions/coding-standards/js/examples/dom-examples.js +667 -0
- package/augment-extensions/coding-standards/js/examples/javascript-examples.js +612 -0
- package/augment-extensions/coding-standards/js/module.json +49 -0
- package/augment-extensions/coding-standards/js/rules/async-patterns.md +515 -0
- package/augment-extensions/coding-standards/js/rules/dom-manipulation.md +439 -0
- package/augment-extensions/coding-standards/js/rules/javascript-standards.md +486 -0
- package/augment-extensions/coding-standards/js/rules/performance.md +463 -0
- package/augment-extensions/coding-standards/js/rules/tooling.md +543 -0
- package/augment-extensions/coding-standards/php/README.md +248 -0
- package/augment-extensions/coding-standards/php/examples/api-endpoint-example.php +204 -0
- package/augment-extensions/coding-standards/php/examples/cli-command-example.php +206 -0
- package/augment-extensions/coding-standards/php/examples/legacy-refactoring-example.php +234 -0
- package/augment-extensions/coding-standards/php/examples/web-application-example.php +211 -0
- package/augment-extensions/coding-standards/php/examples/woocommerce-extension-example.php +215 -0
- package/augment-extensions/coding-standards/php/examples/wordpress-plugin-example.php +189 -0
- package/augment-extensions/coding-standards/php/module.json +166 -0
- package/augment-extensions/coding-standards/php/rules/api-development.md +480 -0
- package/augment-extensions/coding-standards/php/rules/category-configuration.md +332 -0
- package/augment-extensions/coding-standards/php/rules/cli-tools.md +472 -0
- package/augment-extensions/coding-standards/php/rules/cms-integration.md +561 -0
- package/augment-extensions/coding-standards/php/rules/code-quality.md +402 -0
- package/augment-extensions/coding-standards/php/rules/documentation.md +425 -0
- package/augment-extensions/coding-standards/php/rules/ecommerce.md +627 -0
- package/augment-extensions/coding-standards/php/rules/error-handling.md +336 -0
- package/augment-extensions/coding-standards/php/rules/legacy-migration.md +677 -0
- package/augment-extensions/coding-standards/php/rules/naming-conventions.md +279 -0
- package/augment-extensions/coding-standards/php/rules/performance.md +392 -0
- package/augment-extensions/coding-standards/php/rules/psr-standards.md +186 -0
- package/augment-extensions/coding-standards/php/rules/security.md +358 -0
- package/augment-extensions/coding-standards/php/rules/testing.md +403 -0
- package/augment-extensions/coding-standards/php/rules/type-declarations.md +331 -0
- package/augment-extensions/coding-standards/php/rules/web-applications.md +426 -0
- package/augment-extensions/coding-standards/powershell/README.md +154 -0
- package/augment-extensions/coding-standards/powershell/examples/admin-example.ps1 +272 -0
- package/augment-extensions/coding-standards/powershell/examples/automation-example.ps1 +173 -0
- package/augment-extensions/coding-standards/powershell/examples/cloud-example.ps1 +243 -0
- package/augment-extensions/coding-standards/powershell/examples/cross-platform-example.ps1 +297 -0
- package/augment-extensions/coding-standards/powershell/examples/dsc-example.ps1 +224 -0
- package/augment-extensions/coding-standards/powershell/examples/legacy-migration-example.ps1 +340 -0
- package/augment-extensions/coding-standards/powershell/examples/module-example.psm1 +255 -0
- package/augment-extensions/coding-standards/powershell/module.json +165 -0
- package/augment-extensions/coding-standards/powershell/rules/administrative-tools.md +439 -0
- package/augment-extensions/coding-standards/powershell/rules/automation-scripts.md +240 -0
- package/augment-extensions/coding-standards/powershell/rules/cloud-orchestration.md +384 -0
- package/augment-extensions/coding-standards/powershell/rules/configuration-schema.md +383 -0
- package/augment-extensions/coding-standards/powershell/rules/cross-platform-scripts.md +482 -0
- package/augment-extensions/coding-standards/powershell/rules/dsc-configurations.md +296 -0
- package/augment-extensions/coding-standards/powershell/rules/error-handling.md +314 -0
- package/augment-extensions/coding-standards/powershell/rules/legacy-migrations.md +466 -0
- package/augment-extensions/coding-standards/powershell/rules/modules-functions.md +244 -0
- package/augment-extensions/coding-standards/powershell/rules/naming-conventions.md +266 -0
- package/augment-extensions/coding-standards/powershell/rules/performance-optimization.md +209 -0
- package/augment-extensions/coding-standards/powershell/rules/security-practices.md +314 -0
- package/augment-extensions/coding-standards/powershell/rules/testing-guidelines.md +268 -0
- package/augment-extensions/coding-standards/powershell/rules/universal-standards.md +197 -0
- package/augment-extensions/coding-standards/python/README.md +12 -8
- package/augment-extensions/coding-standards/python/examples/best-practices.py +373 -0
- package/augment-extensions/coding-standards/python/module.json +8 -4
- package/augment-extensions/coding-standards/python/rules/async-patterns.md +884 -0
- package/augment-extensions/coding-standards/python/rules/documentation.md +831 -0
- package/augment-extensions/coding-standards/python/rules/error-handling.md +855 -68
- package/augment-extensions/coding-standards/python/rules/testing.md +409 -0
- package/augment-extensions/coding-standards/python/rules/tooling.md +446 -0
- package/augment-extensions/coding-standards/python/rules/type-hints.md +115 -50
- package/augment-extensions/collections/html-css-js/README.md +82 -0
- package/augment-extensions/collections/html-css-js/collection.json +41 -0
- package/augment-extensions/domain-rules/database/README.md +161 -0
- package/augment-extensions/domain-rules/database/examples/flat-database-example.md +793 -0
- package/augment-extensions/domain-rules/database/examples/hybrid-database-example.md +1132 -0
- package/augment-extensions/domain-rules/database/examples/nosql-document-example.md +868 -0
- package/augment-extensions/domain-rules/database/examples/nosql-graph-example.md +805 -0
- package/augment-extensions/domain-rules/database/examples/relational-schema-example.md +621 -0
- package/augment-extensions/domain-rules/database/examples/vector-database-example.md +965 -0
- package/augment-extensions/domain-rules/database/module.json +28 -0
- package/augment-extensions/domain-rules/database/rules/flat-databases.md +624 -0
- package/augment-extensions/domain-rules/database/rules/nosql-databases.md +588 -0
- package/augment-extensions/domain-rules/database/rules/nosql-document-stores.md +856 -0
- package/augment-extensions/domain-rules/database/rules/nosql-graph-databases.md +778 -0
- package/augment-extensions/domain-rules/database/rules/nosql-key-value-stores.md +963 -0
- package/augment-extensions/domain-rules/database/rules/performance-optimization.md +1076 -0
- package/augment-extensions/domain-rules/database/rules/relational-databases.md +697 -0
- package/augment-extensions/domain-rules/database/rules/relational-indexing.md +671 -0
- package/augment-extensions/domain-rules/database/rules/relational-query-optimization.md +607 -0
- package/augment-extensions/domain-rules/database/rules/relational-schema-design.md +907 -0
- package/augment-extensions/domain-rules/database/rules/relational-transactions.md +783 -0
- package/augment-extensions/domain-rules/database/rules/security-standards.md +980 -0
- package/augment-extensions/domain-rules/database/rules/universal-best-practices.md +485 -0
- package/augment-extensions/domain-rules/database/rules/vector-databases.md +521 -0
- package/augment-extensions/domain-rules/database/rules/vector-embeddings.md +858 -0
- package/augment-extensions/domain-rules/database/rules/vector-indexing.md +934 -0
- package/augment-extensions/domain-rules/mcp/README.md +150 -0
- package/augment-extensions/domain-rules/mcp/examples/compressed-example.md +522 -0
- package/augment-extensions/domain-rules/mcp/examples/graph-augmented-example.md +520 -0
- package/augment-extensions/domain-rules/mcp/examples/hybrid-example.md +570 -0
- package/augment-extensions/domain-rules/mcp/examples/state-based-example.md +427 -0
- package/augment-extensions/domain-rules/mcp/examples/token-based-example.md +435 -0
- package/augment-extensions/domain-rules/mcp/examples/vector-based-example.md +502 -0
- package/augment-extensions/domain-rules/mcp/module.json +49 -0
- package/augment-extensions/domain-rules/mcp/rules/compressed-mcp.md +595 -0
- package/augment-extensions/domain-rules/mcp/rules/configuration.md +345 -0
- package/augment-extensions/domain-rules/mcp/rules/graph-augmented-mcp.md +687 -0
- package/augment-extensions/domain-rules/mcp/rules/hybrid-mcp.md +636 -0
- package/augment-extensions/domain-rules/mcp/rules/state-based-mcp.md +484 -0
- package/augment-extensions/domain-rules/mcp/rules/testing-validation.md +360 -0
- package/augment-extensions/domain-rules/mcp/rules/token-based-mcp.md +393 -0
- package/augment-extensions/domain-rules/mcp/rules/universal-rules.md +194 -0
- package/augment-extensions/domain-rules/mcp/rules/vector-based-mcp.md +625 -0
- package/augment-extensions/workflows/beads/module.json +4 -3
- package/augment-extensions/workflows/database/README.md +195 -0
- package/augment-extensions/workflows/database/ai-prompt-testing.md +295 -0
- package/augment-extensions/workflows/database/examples/migration-example.md +498 -0
- package/augment-extensions/workflows/database/examples/optimization-example.md +496 -0
- package/augment-extensions/workflows/database/examples/schema-design-example.md +444 -0
- package/augment-extensions/workflows/database/module.json +42 -0
- package/augment-extensions/workflows/database/rules/data-migration.md +249 -0
- package/augment-extensions/workflows/database/rules/documentation-standards.md +339 -0
- package/augment-extensions/workflows/database/rules/migration-workflow.md +352 -0
- package/augment-extensions/workflows/database/rules/optimization-workflow.md +435 -0
- package/augment-extensions/workflows/database/rules/schema-design-workflow.md +535 -0
- package/augment-extensions/workflows/database/rules/testing-patterns.md +305 -0
- package/augment-extensions/workflows/database/rules/workflow.md +458 -0
- package/augment-extensions/workflows/openspec/module.json +4 -3
- package/augment-extensions/writing-standards/screenplay/README.md +171 -0
- package/augment-extensions/writing-standards/screenplay/examples/aaa-hollywood-scene.fountain +164 -0
- package/augment-extensions/writing-standards/screenplay/module.json +124 -0
- package/augment-extensions/writing-standards/screenplay/rules/universal-formatting.md +339 -0
- package/cli/MODULES.md +302 -0
- package/cli/dist/cli.js +142 -9
- package/cli/dist/cli.js.map +1 -1
- package/cli/dist/commands/catalog.d.ts +13 -0
- package/cli/dist/commands/catalog.d.ts.map +1 -0
- package/cli/dist/commands/catalog.js +104 -0
- package/cli/dist/commands/catalog.js.map +1 -0
- package/cli/dist/commands/gui.d.ts +6 -0
- package/cli/dist/commands/gui.d.ts.map +1 -0
- package/cli/dist/commands/gui.js +211 -0
- package/cli/dist/commands/gui.js.map +1 -0
- package/cli/dist/commands/init.d.ts.map +1 -1
- package/cli/dist/commands/init.js +12 -0
- package/cli/dist/commands/init.js.map +1 -1
- package/cli/dist/commands/install-rules.d.ts +14 -0
- package/cli/dist/commands/install-rules.d.ts.map +1 -0
- package/cli/dist/commands/install-rules.js +127 -0
- package/cli/dist/commands/install-rules.js.map +1 -0
- package/cli/dist/commands/link.d.ts.map +1 -1
- package/cli/dist/commands/link.js +9 -11
- package/cli/dist/commands/link.js.map +1 -1
- package/cli/dist/commands/list.d.ts.map +1 -1
- package/cli/dist/commands/list.js +11 -28
- package/cli/dist/commands/list.js.map +1 -1
- package/cli/dist/commands/mcp.d.ts +48 -0
- package/cli/dist/commands/mcp.d.ts.map +1 -0
- package/cli/dist/commands/mcp.js +229 -0
- package/cli/dist/commands/mcp.js.map +1 -0
- package/cli/dist/commands/self-remove.d.ts +7 -0
- package/cli/dist/commands/self-remove.d.ts.map +1 -0
- package/cli/dist/commands/self-remove.js +179 -0
- package/cli/dist/commands/self-remove.js.map +1 -0
- package/cli/dist/commands/show.d.ts.map +1 -1
- package/cli/dist/commands/show.js +29 -99
- package/cli/dist/commands/show.js.map +1 -1
- package/cli/dist/commands/skill.d.ts +67 -0
- package/cli/dist/commands/skill.d.ts.map +1 -0
- package/cli/dist/commands/skill.js +513 -0
- package/cli/dist/commands/skill.js.map +1 -0
- package/cli/dist/commands/unlink.d.ts +6 -0
- package/cli/dist/commands/unlink.d.ts.map +1 -0
- package/cli/dist/commands/unlink.js +115 -0
- package/cli/dist/commands/unlink.js.map +1 -0
- package/cli/dist/commands/validate.d.ts +6 -0
- package/cli/dist/commands/validate.d.ts.map +1 -0
- package/cli/dist/commands/validate.js +159 -0
- package/cli/dist/commands/validate.js.map +1 -0
- package/cli/dist/utils/catalog-sync.d.ts +22 -0
- package/cli/dist/utils/catalog-sync.d.ts.map +1 -0
- package/cli/dist/utils/catalog-sync.js +157 -0
- package/cli/dist/utils/catalog-sync.js.map +1 -0
- package/cli/dist/utils/character-count.d.ts +56 -0
- package/cli/dist/utils/character-count.d.ts.map +1 -0
- package/cli/dist/utils/character-count.js +190 -0
- package/cli/dist/utils/character-count.js.map +1 -0
- package/cli/dist/utils/documentation-validator.d.ts +18 -0
- package/cli/dist/utils/documentation-validator.d.ts.map +1 -0
- package/cli/dist/utils/documentation-validator.js +233 -0
- package/cli/dist/utils/documentation-validator.js.map +1 -0
- package/cli/dist/utils/install-rules.d.ts +32 -0
- package/cli/dist/utils/install-rules.d.ts.map +1 -0
- package/cli/dist/utils/install-rules.js +375 -0
- package/cli/dist/utils/install-rules.js.map +1 -0
- package/cli/dist/utils/mcp-integration.d.ts +70 -0
- package/cli/dist/utils/mcp-integration.d.ts.map +1 -0
- package/cli/dist/utils/mcp-integration.js +292 -0
- package/cli/dist/utils/mcp-integration.js.map +1 -0
- package/cli/dist/utils/module-system.d.ts +153 -0
- package/cli/dist/utils/module-system.d.ts.map +1 -0
- package/cli/dist/utils/module-system.js +528 -0
- package/cli/dist/utils/module-system.js.map +1 -0
- package/cli/dist/utils/modules-catalog.d.ts +33 -0
- package/cli/dist/utils/modules-catalog.d.ts.map +1 -0
- package/cli/dist/utils/modules-catalog.js +163 -0
- package/cli/dist/utils/modules-catalog.js.map +1 -0
- package/cli/dist/utils/rule-install-hooks.d.ts +19 -0
- package/cli/dist/utils/rule-install-hooks.d.ts.map +1 -0
- package/cli/dist/utils/rule-install-hooks.js +224 -0
- package/cli/dist/utils/rule-install-hooks.js.map +1 -0
- package/cli/dist/utils/skill-system.d.ts +95 -0
- package/cli/dist/utils/skill-system.d.ts.map +1 -0
- package/cli/dist/utils/skill-system.js +313 -0
- package/cli/dist/utils/skill-system.js.map +1 -0
- package/modules.md +518 -106
- package/package.json +12 -3
|
@@ -0,0 +1,458 @@
|
|
|
1
|
+
# Database Design and Development Workflow
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
This workflow provides comprehensive guidance for AI agents working on database-related tasks, from initial database selection through schema design, implementation, migration, optimization, and testing.
|
|
6
|
+
|
|
7
|
+
## Core Workflow
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
┌─────────────────────┐
|
|
11
|
+
│ Database Selection │
|
|
12
|
+
│ Choose DB type │
|
|
13
|
+
└──────────┬──────────┘
|
|
14
|
+
│
|
|
15
|
+
▼
|
|
16
|
+
┌─────────────────────┐
|
|
17
|
+
│ Schema Design │
|
|
18
|
+
│ Model entities │
|
|
19
|
+
└──────────┬──────────┘
|
|
20
|
+
│
|
|
21
|
+
▼
|
|
22
|
+
┌─────────────────────┐
|
|
23
|
+
│ Implementation │
|
|
24
|
+
│ Create schema │
|
|
25
|
+
└──────────┬──────────┘
|
|
26
|
+
│
|
|
27
|
+
▼
|
|
28
|
+
┌─────────────────────┐
|
|
29
|
+
│ Migration │
|
|
30
|
+
│ Version changes │
|
|
31
|
+
└──────────┬──────────┘
|
|
32
|
+
│
|
|
33
|
+
▼
|
|
34
|
+
┌─────────────────────┐
|
|
35
|
+
│ Optimization │
|
|
36
|
+
│ Tune performance │
|
|
37
|
+
└──────────┬──────────┘
|
|
38
|
+
│
|
|
39
|
+
▼
|
|
40
|
+
┌─────────────────────┐
|
|
41
|
+
│ Testing │
|
|
42
|
+
│ Validate behavior │
|
|
43
|
+
└─────────────────────┘
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Coordination with OpenSpec and Beads
|
|
47
|
+
|
|
48
|
+
Database work should be tracked using OpenSpec specifications and Beads tasks:
|
|
49
|
+
|
|
50
|
+
**OpenSpec Integration**:
|
|
51
|
+
- Create specs in `openspec/specs/database/`
|
|
52
|
+
- Document schema requirements and design decisions
|
|
53
|
+
- Track breaking changes and migration strategies
|
|
54
|
+
|
|
55
|
+
**Beads Integration**:
|
|
56
|
+
- Create tasks with `bd create "Task description"`
|
|
57
|
+
- Reference specs: `"spec": "database/schema-design"`
|
|
58
|
+
- Track dependencies between schema changes
|
|
59
|
+
|
|
60
|
+
**Example Task**:
|
|
61
|
+
```json
|
|
62
|
+
{
|
|
63
|
+
"id": "bd-db01",
|
|
64
|
+
"title": "Design user authentication schema",
|
|
65
|
+
"spec": "database/user-auth-schema",
|
|
66
|
+
"rules": ["schema-design-workflow.md"],
|
|
67
|
+
"status": "open",
|
|
68
|
+
"priority": 0
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Workflow Steps
|
|
73
|
+
|
|
74
|
+
### Step 1: Database Selection
|
|
75
|
+
|
|
76
|
+
**Purpose**: Choose the right database type for your use case
|
|
77
|
+
|
|
78
|
+
**Decision Framework**:
|
|
79
|
+
|
|
80
|
+
1. **Analyze Data Structure**:
|
|
81
|
+
- Structured (tables, rows) → Relational (PostgreSQL, MySQL)
|
|
82
|
+
- Semi-structured (documents) → NoSQL (MongoDB, DynamoDB)
|
|
83
|
+
- Graph relationships → Graph DB (Neo4j, ArangoDB)
|
|
84
|
+
- Vector embeddings → Vector DB (Pinecone, Milvus)
|
|
85
|
+
- Simple key-value → Redis, DynamoDB
|
|
86
|
+
- Flat files → CSV, JSON
|
|
87
|
+
|
|
88
|
+
2. **Analyze Query Patterns**:
|
|
89
|
+
- Complex joins and aggregations → Relational
|
|
90
|
+
- Document retrieval → NoSQL
|
|
91
|
+
- Graph traversal → Graph DB
|
|
92
|
+
- Similarity search → Vector DB
|
|
93
|
+
- Simple lookups → Key-value store
|
|
94
|
+
|
|
95
|
+
3. **Analyze Scale Requirements**:
|
|
96
|
+
- < 1M records → SQLite, PostgreSQL, MySQL
|
|
97
|
+
- 1M - 100M records → PostgreSQL, MySQL, MongoDB
|
|
98
|
+
- > 100M records → Distributed DB (DynamoDB, Cassandra)
|
|
99
|
+
|
|
100
|
+
4. **Consider Operational Requirements**:
|
|
101
|
+
- ACID guarantees needed → Relational
|
|
102
|
+
- Eventual consistency acceptable → NoSQL
|
|
103
|
+
- Managed service preferred → Cloud-native (RDS, DynamoDB)
|
|
104
|
+
- Self-hosted required → PostgreSQL, MySQL, MongoDB
|
|
105
|
+
|
|
106
|
+
**Output**: Database selection with documented rationale
|
|
107
|
+
|
|
108
|
+
**AI Prompt Template**:
|
|
109
|
+
```
|
|
110
|
+
I need to select a database for [use case]. Requirements:
|
|
111
|
+
- Data structure: [structured/semi-structured/unstructured]
|
|
112
|
+
- Query patterns: [describe common queries]
|
|
113
|
+
- Scale: [number of records, growth rate]
|
|
114
|
+
- Consistency needs: [strong/eventual]
|
|
115
|
+
- Operational constraints: [managed/self-hosted, budget]
|
|
116
|
+
|
|
117
|
+
Please recommend a database type and specific database, with rationale.
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### Step 2: Schema Design
|
|
121
|
+
|
|
122
|
+
**Purpose**: Design optimal database schema
|
|
123
|
+
|
|
124
|
+
See `schema-design-workflow.md` for detailed guidance.
|
|
125
|
+
|
|
126
|
+
**Quick Steps**:
|
|
127
|
+
1. Identify entities and attributes
|
|
128
|
+
2. Map relationships between entities
|
|
129
|
+
3. Apply normalization (relational) or denormalization (NoSQL)
|
|
130
|
+
4. Define constraints and validation rules
|
|
131
|
+
5. Plan indexes for common queries
|
|
132
|
+
6. Review and validate design
|
|
133
|
+
|
|
134
|
+
**Output**: Schema design document with ERD or data model
|
|
135
|
+
|
|
136
|
+
### Step 3: Implementation
|
|
137
|
+
|
|
138
|
+
**Purpose**: Create database schema in target database
|
|
139
|
+
|
|
140
|
+
**Steps**:
|
|
141
|
+
|
|
142
|
+
1. **Set Up Database Environment**:
|
|
143
|
+
- Install database locally or provision cloud instance
|
|
144
|
+
- Configure connection settings
|
|
145
|
+
- Set up database users and permissions
|
|
146
|
+
|
|
147
|
+
2. **Create Schema**:
|
|
148
|
+
- Write DDL (Data Definition Language) scripts
|
|
149
|
+
- Include comments for documentation
|
|
150
|
+
- Add constraints and indexes
|
|
151
|
+
- Version control schema files
|
|
152
|
+
|
|
153
|
+
3. **Seed Initial Data** (if needed):
|
|
154
|
+
- Create seed data scripts
|
|
155
|
+
- Include reference data (countries, categories, etc.)
|
|
156
|
+
- Document data sources
|
|
157
|
+
|
|
158
|
+
**Output**: Executable schema scripts in version control
|
|
159
|
+
|
|
160
|
+
**AI Prompt Template**:
|
|
161
|
+
```
|
|
162
|
+
Create database schema for [database type] based on this design:
|
|
163
|
+
|
|
164
|
+
[paste schema design]
|
|
165
|
+
|
|
166
|
+
Requirements:
|
|
167
|
+
- Include table/collection definitions
|
|
168
|
+
- Add appropriate constraints
|
|
169
|
+
- Create indexes for common queries
|
|
170
|
+
- Add comments for documentation
|
|
171
|
+
- Make scripts idempotent
|
|
172
|
+
|
|
173
|
+
Please generate DDL/schema creation scripts.
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
### Step 4: Migration Management
|
|
177
|
+
|
|
178
|
+
**Purpose**: Safely evolve database schema over time
|
|
179
|
+
|
|
180
|
+
See `data-migration.md` for detailed guidance.
|
|
181
|
+
|
|
182
|
+
**Quick Steps**:
|
|
183
|
+
1. Plan migration (what changes, impact, rollback)
|
|
184
|
+
2. Create up and down migration scripts
|
|
185
|
+
3. Test on staging data
|
|
186
|
+
4. Execute migration with monitoring
|
|
187
|
+
5. Verify success and data integrity
|
|
188
|
+
|
|
189
|
+
**Output**: Versioned migration scripts with rollback plans
|
|
190
|
+
|
|
191
|
+
### Step 5: Optimization
|
|
192
|
+
|
|
193
|
+
**Purpose**: Improve database performance
|
|
194
|
+
|
|
195
|
+
See `optimization-workflow.md` for detailed guidance.
|
|
196
|
+
|
|
197
|
+
**Quick Steps**:
|
|
198
|
+
1. Identify slow queries (profiling, logs)
|
|
199
|
+
2. Analyze query execution plans
|
|
200
|
+
3. Add or optimize indexes
|
|
201
|
+
4. Refactor queries
|
|
202
|
+
5. Consider denormalization or caching
|
|
203
|
+
6. Measure improvements
|
|
204
|
+
|
|
205
|
+
**Output**: Optimized queries and schema with performance metrics
|
|
206
|
+
|
|
207
|
+
### Step 6: Testing
|
|
208
|
+
|
|
209
|
+
**Purpose**: Validate database behavior and performance
|
|
210
|
+
|
|
211
|
+
See `testing-patterns.md` for detailed guidance.
|
|
212
|
+
|
|
213
|
+
**Quick Steps**:
|
|
214
|
+
1. Set up test database environment
|
|
215
|
+
2. Create test fixtures and seed data
|
|
216
|
+
3. Write unit tests (constraints, validation)
|
|
217
|
+
4. Write integration tests (queries, transactions)
|
|
218
|
+
5. Write performance tests (load, stress)
|
|
219
|
+
6. Run tests in CI/CD pipeline
|
|
220
|
+
|
|
221
|
+
**Output**: Comprehensive test suite with fixtures
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Database Type-Specific Workflows
|
|
226
|
+
|
|
227
|
+
### Relational Databases (PostgreSQL, MySQL, SQL Server)
|
|
228
|
+
|
|
229
|
+
**Schema Design**:
|
|
230
|
+
- Normalize to 3NF (Third Normal Form)
|
|
231
|
+
- Use foreign keys for referential integrity
|
|
232
|
+
- Add check constraints for validation
|
|
233
|
+
- Create indexes on foreign keys and query columns
|
|
234
|
+
|
|
235
|
+
**Migration Tools**:
|
|
236
|
+
- **PostgreSQL**: Flyway, Liquibase, Alembic (Python), Knex (Node.js)
|
|
237
|
+
- **MySQL**: Flyway, Liquibase, Laravel Migrations (PHP)
|
|
238
|
+
- **SQL Server**: Entity Framework Migrations, Flyway
|
|
239
|
+
|
|
240
|
+
**Best Practices**:
|
|
241
|
+
- Use transactions for data consistency
|
|
242
|
+
- Add indexes carefully (balance read vs write performance)
|
|
243
|
+
- Use EXPLAIN/EXPLAIN ANALYZE to understand query plans
|
|
244
|
+
- Monitor connection pool usage
|
|
245
|
+
|
|
246
|
+
### NoSQL Databases (MongoDB, DynamoDB)
|
|
247
|
+
|
|
248
|
+
**Schema Design**:
|
|
249
|
+
- Denormalize for query efficiency
|
|
250
|
+
- Embed related data in documents
|
|
251
|
+
- Use references for large or frequently updated data
|
|
252
|
+
- Design for access patterns, not normalization
|
|
253
|
+
|
|
254
|
+
**Migration Strategies**:
|
|
255
|
+
- Schema-less doesn't mean schema-free
|
|
256
|
+
- Version documents with schema version field
|
|
257
|
+
- Migrate data lazily (on read) or in batches
|
|
258
|
+
- Use application-level schema validation
|
|
259
|
+
|
|
260
|
+
**Best Practices**:
|
|
261
|
+
- Design for your query patterns
|
|
262
|
+
- Avoid large documents (> 16MB in MongoDB)
|
|
263
|
+
- Use indexes on query fields
|
|
264
|
+
- Monitor document size and collection growth
|
|
265
|
+
|
|
266
|
+
### Vector Databases (Pinecone, Milvus, Weaviate)
|
|
267
|
+
|
|
268
|
+
**Schema Design**:
|
|
269
|
+
- Define vector dimensions (match embedding model)
|
|
270
|
+
- Choose distance metric (cosine, euclidean, dot product)
|
|
271
|
+
- Plan metadata fields for filtering
|
|
272
|
+
- Consider hybrid search (vector + keyword)
|
|
273
|
+
|
|
274
|
+
**Index Configuration**:
|
|
275
|
+
- Choose index type (HNSW, IVF, etc.)
|
|
276
|
+
- Tune index parameters (ef_construction, M)
|
|
277
|
+
- Balance accuracy vs speed
|
|
278
|
+
- Plan for index rebuild time
|
|
279
|
+
|
|
280
|
+
**Best Practices**:
|
|
281
|
+
- Normalize vectors before insertion
|
|
282
|
+
- Use metadata filtering to reduce search space
|
|
283
|
+
- Batch insertions for better performance
|
|
284
|
+
- Monitor index size and query latency
|
|
285
|
+
|
|
286
|
+
### Flat Databases (CSV, JSON files)
|
|
287
|
+
|
|
288
|
+
**Schema Design**:
|
|
289
|
+
- Define clear column/field names
|
|
290
|
+
- Document data types and formats
|
|
291
|
+
- Use consistent date/time formats (ISO 8601)
|
|
292
|
+
- Plan for schema evolution
|
|
293
|
+
|
|
294
|
+
**File Management**:
|
|
295
|
+
- Use version control for schema definitions
|
|
296
|
+
- Validate data on read/write
|
|
297
|
+
- Consider file size limits (split large files)
|
|
298
|
+
- Use compression for storage efficiency
|
|
299
|
+
|
|
300
|
+
**Best Practices**:
|
|
301
|
+
- Validate data with JSON Schema or CSV schema
|
|
302
|
+
- Use streaming for large files
|
|
303
|
+
- Implement proper error handling
|
|
304
|
+
- Consider migration to database if data grows
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
## AI Prompt Templates
|
|
309
|
+
|
|
310
|
+
### Database Selection
|
|
311
|
+
|
|
312
|
+
```
|
|
313
|
+
I need to select a database for [application type]. Requirements:
|
|
314
|
+
|
|
315
|
+
**Data Characteristics**:
|
|
316
|
+
- Structure: [structured/semi-structured/unstructured]
|
|
317
|
+
- Volume: [current size, growth rate]
|
|
318
|
+
- Relationships: [simple/complex graph]
|
|
319
|
+
|
|
320
|
+
**Query Patterns**:
|
|
321
|
+
- [Query pattern 1]: [frequency, complexity]
|
|
322
|
+
- [Query pattern 2]: [frequency, complexity]
|
|
323
|
+
|
|
324
|
+
**Non-Functional Requirements**:
|
|
325
|
+
- Consistency: [strong ACID / eventual consistency]
|
|
326
|
+
- Availability: [uptime requirements]
|
|
327
|
+
- Scale: [read/write throughput]
|
|
328
|
+
- Budget: [constraints]
|
|
329
|
+
- Expertise: [team skills]
|
|
330
|
+
|
|
331
|
+
Please recommend a database with rationale and trade-offs.
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
### Schema Design
|
|
335
|
+
|
|
336
|
+
```
|
|
337
|
+
Design a database schema for [application type].
|
|
338
|
+
|
|
339
|
+
**Entities**:
|
|
340
|
+
- [Entity 1]: [attributes and types]
|
|
341
|
+
- [Entity 2]: [attributes and types]
|
|
342
|
+
|
|
343
|
+
**Relationships**:
|
|
344
|
+
- [Entity 1] [relationship type] [Entity 2]
|
|
345
|
+
|
|
346
|
+
**Common Queries**:
|
|
347
|
+
- [Query 1]: [description]
|
|
348
|
+
- [Query 2]: [description]
|
|
349
|
+
|
|
350
|
+
**Constraints**:
|
|
351
|
+
- [Constraint 1]
|
|
352
|
+
- [Constraint 2]
|
|
353
|
+
|
|
354
|
+
Please design an optimal schema with normalization, constraints, and indexes.
|
|
355
|
+
```
|
|
356
|
+
|
|
357
|
+
### Migration Planning
|
|
358
|
+
|
|
359
|
+
```
|
|
360
|
+
Plan a database migration for [describe change].
|
|
361
|
+
|
|
362
|
+
**Current Schema**:
|
|
363
|
+
[paste current schema]
|
|
364
|
+
|
|
365
|
+
**Desired Schema**:
|
|
366
|
+
[paste desired schema or describe changes]
|
|
367
|
+
|
|
368
|
+
**Constraints**:
|
|
369
|
+
- Zero downtime: [yes/no]
|
|
370
|
+
- Backward compatibility: [yes/no]
|
|
371
|
+
- Data volume: [number of rows]
|
|
372
|
+
- Database: [type and version]
|
|
373
|
+
|
|
374
|
+
Please create a migration plan with up/down scripts and rollback strategy.
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
### Query Optimization
|
|
378
|
+
|
|
379
|
+
```
|
|
380
|
+
Optimize this slow query:
|
|
381
|
+
|
|
382
|
+
**Query**:
|
|
383
|
+
[paste query]
|
|
384
|
+
|
|
385
|
+
**Execution Plan**:
|
|
386
|
+
[paste EXPLAIN output]
|
|
387
|
+
|
|
388
|
+
**Schema**:
|
|
389
|
+
[paste relevant table definitions]
|
|
390
|
+
|
|
391
|
+
**Performance Issue**:
|
|
392
|
+
- Current execution time: [time]
|
|
393
|
+
- Target execution time: [time]
|
|
394
|
+
- Data volume: [number of rows]
|
|
395
|
+
|
|
396
|
+
Please suggest optimizations (indexes, query rewrite, schema changes).
|
|
397
|
+
```
|
|
398
|
+
|
|
399
|
+
---
|
|
400
|
+
|
|
401
|
+
## Best Practices
|
|
402
|
+
|
|
403
|
+
### DO
|
|
404
|
+
|
|
405
|
+
✅ Document database selection rationale
|
|
406
|
+
✅ Version control all schema and migration scripts
|
|
407
|
+
✅ Test migrations on production-like data
|
|
408
|
+
✅ Monitor database performance metrics
|
|
409
|
+
✅ Use transactions for data consistency
|
|
410
|
+
✅ Add indexes based on query patterns
|
|
411
|
+
✅ Plan for rollback before executing migrations
|
|
412
|
+
✅ Use connection pooling in applications
|
|
413
|
+
|
|
414
|
+
### DON'T
|
|
415
|
+
|
|
416
|
+
❌ Choose database without analyzing requirements
|
|
417
|
+
❌ Make schema changes without migration scripts
|
|
418
|
+
❌ Skip testing migrations before production
|
|
419
|
+
❌ Add indexes without measuring impact
|
|
420
|
+
❌ Store sensitive data without encryption
|
|
421
|
+
❌ Ignore database performance metrics
|
|
422
|
+
❌ Deploy code and schema changes simultaneously
|
|
423
|
+
❌ Forget to document design decisions
|
|
424
|
+
|
|
425
|
+
---
|
|
426
|
+
|
|
427
|
+
## Common Pitfalls
|
|
428
|
+
|
|
429
|
+
**Pitfall 1: Premature Optimization**
|
|
430
|
+
- ❌ Adding indexes before understanding query patterns
|
|
431
|
+
- ✅ Profile queries first, then optimize based on data
|
|
432
|
+
|
|
433
|
+
**Pitfall 2: Over-Normalization**
|
|
434
|
+
- ❌ Normalizing to 5NF causing excessive joins
|
|
435
|
+
- ✅ Balance normalization with query performance
|
|
436
|
+
|
|
437
|
+
**Pitfall 3: Under-Indexing**
|
|
438
|
+
- ❌ No indexes on foreign keys or query columns
|
|
439
|
+
- ✅ Add indexes for common query patterns
|
|
440
|
+
|
|
441
|
+
**Pitfall 4: Ignoring Migrations**
|
|
442
|
+
- ❌ Making schema changes directly in production
|
|
443
|
+
- ✅ Use versioned migration scripts with rollback
|
|
444
|
+
|
|
445
|
+
**Pitfall 5: Not Testing at Scale**
|
|
446
|
+
- ❌ Testing with small datasets
|
|
447
|
+
- ✅ Test with production-like data volumes
|
|
448
|
+
|
|
449
|
+
---
|
|
450
|
+
|
|
451
|
+
## Next Steps
|
|
452
|
+
|
|
453
|
+
- See `schema-design-workflow.md` for detailed schema design process
|
|
454
|
+
- See `data-migration.md` for migration management strategies
|
|
455
|
+
- See `optimization-workflow.md` for performance tuning guidance
|
|
456
|
+
- See `testing-patterns.md` for database testing approaches
|
|
457
|
+
- See `documentation-standards.md` for documenting database designs
|
|
458
|
+
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"displayName": "OpenSpec Workflow",
|
|
5
5
|
"description": "Spec-driven development (SDD) workflow for AI coding assistants. Provides structured change management with proposals, specs, and tasks.",
|
|
6
|
-
"type": "
|
|
6
|
+
"type": "workflows",
|
|
7
7
|
"author": "Augment Extensions",
|
|
8
8
|
"license": "MIT",
|
|
9
9
|
"keywords": [
|
|
@@ -16,9 +16,10 @@
|
|
|
16
16
|
"change-management"
|
|
17
17
|
],
|
|
18
18
|
"augment": {
|
|
19
|
-
"characterCount":
|
|
19
|
+
"characterCount": 32661,
|
|
20
20
|
"priority": "high",
|
|
21
|
-
"category": "
|
|
21
|
+
"category": "workflows",
|
|
22
|
+
"tags": ["openspec", "spec-driven-development", "workflow", "change-management"],
|
|
22
23
|
"compatibleWith": [
|
|
23
24
|
"Claude Code",
|
|
24
25
|
"CodeBuddy",
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
# Screenplay Writing Standards
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
Comprehensive screenplay writing and crafting standards for AI-driven content creation across multiple formats and industries.
|
|
6
|
+
|
|
7
|
+
**Version**: 1.0.0
|
|
8
|
+
**Type**: writing-standards
|
|
9
|
+
**Character Count**: ~TBD
|
|
10
|
+
|
|
11
|
+
## Key Benefits
|
|
12
|
+
|
|
13
|
+
✅ **Industry-Standard Formatting** - AMPAS Nicholl Fellowship formatting standards
|
|
14
|
+
✅ **Narrative Frameworks** - Syd Field, Blake Snyder, Joseph Campbell structures
|
|
15
|
+
✅ **Category-Specific Rules** - 8 screenplay categories (Hollywood, indie, TV, web, news, commercials, streaming, live TV)
|
|
16
|
+
✅ **Character Development** - Programmatic character arcs, traits, motivations
|
|
17
|
+
✅ **Dialogue Mastery** - Natural speech, subtext, character voice
|
|
18
|
+
✅ **Screen Continuity** - Visual consistency rules (180-degree rule, match cuts)
|
|
19
|
+
✅ **Fountain Format** - Industry-standard plain-text screenplay markup
|
|
20
|
+
✅ **VS Code Integration** - Better Fountain extension support
|
|
21
|
+
✅ **Export Tools** - Final Draft (.fdx), PDF, HTML export
|
|
22
|
+
|
|
23
|
+
## Installation
|
|
24
|
+
|
|
25
|
+
### With CLI (Recommended)
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
augx link writing-standards/screenplay
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Manual Setup
|
|
32
|
+
|
|
33
|
+
1. Copy `augment-extensions/writing-standards/screenplay/` to your project
|
|
34
|
+
2. Create `.augment/screenplay-config.json` with category selection
|
|
35
|
+
3. Reference rule files in your AI prompts
|
|
36
|
+
|
|
37
|
+
## Configuration
|
|
38
|
+
|
|
39
|
+
Create `.augment/screenplay-config.json`:
|
|
40
|
+
|
|
41
|
+
```json
|
|
42
|
+
{
|
|
43
|
+
"categories": ["aaa-hollywood-films"],
|
|
44
|
+
"universalRules": true,
|
|
45
|
+
"fountainFormat": true,
|
|
46
|
+
"exportFormats": ["fdx", "pdf"]
|
|
47
|
+
}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Available Categories
|
|
51
|
+
|
|
52
|
+
1. **aaa-hollywood-films** - AAA Hollywood blockbusters
|
|
53
|
+
2. **independent-films** - Independent/art-house films
|
|
54
|
+
3. **tv-series** - Television series (episodic)
|
|
55
|
+
4. **web-content** - Web series and short-form content
|
|
56
|
+
5. **news-broadcasts** - News segments and broadcasts
|
|
57
|
+
6. **commercials** - Advertising and commercials
|
|
58
|
+
7. **streaming-content** - Streaming platform content
|
|
59
|
+
8. **live-tv-productions** - Live TV productions
|
|
60
|
+
|
|
61
|
+
## Directory Structure
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
augment-extensions/writing-standards/screenplay/
|
|
65
|
+
├── module.json # Module metadata
|
|
66
|
+
├── README.md # This file
|
|
67
|
+
├── rules/ # Screenplay writing rules
|
|
68
|
+
│ ├── universal-formatting.md # AMPAS formatting standards
|
|
69
|
+
│ ├── narrative-structures.md # Three-act, beat sheets, hero's journey
|
|
70
|
+
│ ├── character-development.md # Character arcs and development
|
|
71
|
+
│ ├── dialogue-writing.md # Dialogue best practices
|
|
72
|
+
│ ├── screen-continuity.md # Visual consistency rules
|
|
73
|
+
│ ├── pacing-timing.md # Pacing and timing guidelines
|
|
74
|
+
│ ├── diversity-inclusion.md # Diversity and inclusion standards
|
|
75
|
+
│ ├── aaa-hollywood-films.md # AAA Hollywood category rules
|
|
76
|
+
│ ├── independent-films.md # Independent film category rules
|
|
77
|
+
│ ├── tv-series.md # TV series category rules
|
|
78
|
+
│ ├── web-content.md # Web content category rules
|
|
79
|
+
│ ├── news-broadcasts.md # News broadcast category rules
|
|
80
|
+
│ ├── commercials.md # Commercial category rules
|
|
81
|
+
│ ├── streaming-content.md # Streaming content category rules
|
|
82
|
+
│ └── live-tv-productions.md # Live TV category rules
|
|
83
|
+
├── schemas/ # JSON schemas for screenplay data
|
|
84
|
+
│ ├── character-profile.json # Character profile schema
|
|
85
|
+
│ ├── beat-sheet.json # Beat sheet schema
|
|
86
|
+
│ ├── plot-outline.json # Plot outline schema
|
|
87
|
+
│ └── trope-inventory.json # Trope inventory schema
|
|
88
|
+
└── examples/ # Example screenplay files
|
|
89
|
+
├── aaa-hollywood-scene.fountain
|
|
90
|
+
├── independent-monologue.fountain
|
|
91
|
+
├── tv-episode-teaser.fountain
|
|
92
|
+
├── news-segment.fountain
|
|
93
|
+
├── commercial-30sec.fountain
|
|
94
|
+
├── character-profile-example.yaml
|
|
95
|
+
├── beat-sheet-example.yaml
|
|
96
|
+
└── plot-outline-example.yaml
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Core Guidelines
|
|
100
|
+
|
|
101
|
+
### Universal Formatting (AMPAS Standards)
|
|
102
|
+
|
|
103
|
+
- **Font**: 12-point Courier or Courier New
|
|
104
|
+
- **Margins**: 1-inch top/bottom/right, 1.5-inch left
|
|
105
|
+
- **Page Length**: ~1 page per minute of screen time
|
|
106
|
+
- **Scene Headings**: ALL CAPS, INT./EXT., location, time of day
|
|
107
|
+
- **Action**: Present tense, active voice, visual descriptions
|
|
108
|
+
- **Dialogue**: Character name centered, dialogue indented
|
|
109
|
+
- **Transitions**: RIGHT-ALIGNED (FADE IN:, CUT TO:, DISSOLVE TO:)
|
|
110
|
+
|
|
111
|
+
### Narrative Structures
|
|
112
|
+
|
|
113
|
+
1. **Three-Act Structure** (Syd Field)
|
|
114
|
+
- Act I: Setup (25% - pages 1-30)
|
|
115
|
+
- Act II: Confrontation (50% - pages 30-90)
|
|
116
|
+
- Act III: Resolution (25% - pages 90-120)
|
|
117
|
+
|
|
118
|
+
2. **Save the Cat Beat Sheet** (Blake Snyder)
|
|
119
|
+
- Opening Image, Theme Stated, Setup, Catalyst, Debate, Break into Two, B Story, Fun and Games, Midpoint, Bad Guys Close In, All Is Lost, Dark Night of the Soul, Break into Three, Finale, Final Image
|
|
120
|
+
|
|
121
|
+
3. **Hero's Journey** (Joseph Campbell)
|
|
122
|
+
- Ordinary World, Call to Adventure, Refusal, Meeting the Mentor, Crossing the Threshold, Tests/Allies/Enemies, Approach, Ordeal, Reward, The Road Back, Resurrection, Return with Elixir
|
|
123
|
+
|
|
124
|
+
### Character Development
|
|
125
|
+
|
|
126
|
+
- **Character Arc**: Transformation from beginning to end
|
|
127
|
+
- **Traits**: Physical, psychological, sociological
|
|
128
|
+
- **Motivations**: Internal and external goals
|
|
129
|
+
- **Relationships**: Protagonist, antagonist, allies, mentors
|
|
130
|
+
- **Dialogue Voice**: Unique speech patterns per character
|
|
131
|
+
|
|
132
|
+
## VS Code Integration
|
|
133
|
+
|
|
134
|
+
### Better Fountain Extension
|
|
135
|
+
|
|
136
|
+
1. Install: `ext install piersdeseilligny.betterfountain`
|
|
137
|
+
2. Open `.fountain` files for syntax highlighting
|
|
138
|
+
3. Use `Ctrl+Shift+P` → "Fountain: Export to PDF"
|
|
139
|
+
|
|
140
|
+
### Fountain Syntax
|
|
141
|
+
|
|
142
|
+
```fountain
|
|
143
|
+
INT. COFFEE SHOP - DAY
|
|
144
|
+
|
|
145
|
+
SARAH, 30s, sits alone with a laptop.
|
|
146
|
+
|
|
147
|
+
SARAH
|
|
148
|
+
(to herself)
|
|
149
|
+
This is it. The moment of truth.
|
|
150
|
+
|
|
151
|
+
She hits ENTER. Waits.
|
|
152
|
+
|
|
153
|
+
FADE OUT.
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
## Export Formats
|
|
157
|
+
|
|
158
|
+
- **Final Draft (.fdx)**: Industry-standard format
|
|
159
|
+
- **PDF**: Print-ready screenplay
|
|
160
|
+
- **HTML**: Web-friendly format
|
|
161
|
+
|
|
162
|
+
## References
|
|
163
|
+
|
|
164
|
+
- [AMPAS Nicholl Fellowship Requirements](https://www.oscars.org/nicholl/requirements)
|
|
165
|
+
- [Fountain Specification](https://fountain.io/)
|
|
166
|
+
- [Final Draft](https://www.finaldraft.com/)
|
|
167
|
+
- Syd Field: "Screenplay: The Foundations of Screenwriting"
|
|
168
|
+
- Blake Snyder: "Save the Cat!"
|
|
169
|
+
- Joseph Campbell: "The Hero with a Thousand Faces"
|
|
170
|
+
- Robert McKee: "Story"
|
|
171
|
+
|