feedeas 0.1.0-alpha.2 → 0.1.0-alpha.20
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/.env.example +22 -0
- package/README.md +195 -5
- package/bin/feedeas.js +3 -0
- package/dist/cli/index.js +5035 -4843
- package/dist/ui/assets/index-BmZJpWKy.js +22 -0
- package/dist/ui/assets/index-C1fRwqXS.css +1 -0
- package/dist/ui/index.html +2 -2
- package/docs/BGM_COMMAND.md +66 -0
- package/docs/TASTE_AUTOMATION.md +62 -0
- package/package.json +36 -7
- package/scripts/release-npm.ts +88 -0
- package/bun.lock +0 -429
- package/index.ts +0 -1
- package/src/cli/commands/example.ts +0 -122
- package/src/cli/commands/inspect.ts +0 -41
- package/src/cli/commands/record.ts +0 -217
- package/src/cli/commands/schema.ts +0 -143
- package/src/cli/commands/set-scene.ts +0 -51
- package/src/cli/commands/validate.ts +0 -86
- package/src/cli/index.ts +0 -207
- package/src/cli/server/api.ts +0 -137
- package/src/cli/server/index.ts +0 -53
- package/src/ui/App.tsx +0 -48
- package/src/ui/components/CanvasPreview.tsx +0 -406
- package/src/ui/components/EntityList.tsx +0 -139
- package/src/ui/components/Header.tsx +0 -61
- package/src/ui/components/PropertyPanel.tsx +0 -313
- package/src/ui/components/Timeline.tsx +0 -304
- package/src/ui/context/ProjectContext.tsx +0 -127
- package/src/ui/index.css +0 -1
- package/src/ui/index.html +0 -13
- package/src/ui/main.tsx +0 -10
- package/src/ui/store/reducer.ts +0 -119
- package/src/ui/types.ts +0 -85
- package/tsconfig.json +0 -27
- package/vite.config.ts +0 -30
package/.env.example
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Feedeas Environment Variables
|
|
2
|
+
|
|
3
|
+
# Gemini API Key (for 'imagine' command)
|
|
4
|
+
# Get your API key at: https://aistudio.google.com/app/apikey
|
|
5
|
+
GEMINI_API_KEY=your-gemini-api-key-here
|
|
6
|
+
|
|
7
|
+
# Optional (maintainer build-time): embed telemetry key into dist/cli build.
|
|
8
|
+
# This lets telemetry work for end users without reading runner env vars.
|
|
9
|
+
# FEDEAS_POSTHOG_BUILD_KEY=your-posthog-project-key-here
|
|
10
|
+
|
|
11
|
+
# Optional: Disable telemetry even when build key is embedded
|
|
12
|
+
# FEDEAS_TELEMETRY_DISABLED=true
|
|
13
|
+
|
|
14
|
+
# Setup Instructions:
|
|
15
|
+
# 1. Copy this file to .env
|
|
16
|
+
# 2. Replace the placeholder value with your actual Gemini API key
|
|
17
|
+
# 3. The CLI will automatically load this value
|
|
18
|
+
#
|
|
19
|
+
# Example:
|
|
20
|
+
# cp .env.example .env
|
|
21
|
+
# # Edit .env with your API key
|
|
22
|
+
# feedeas imagine "a beautiful sunset"
|
package/README.md
CHANGED
|
@@ -1,15 +1,205 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Feedeas
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**Feedeas** is an agentic video creation tool that allows you to programmatically create videos using JSON scene definitions. Perfect for automated content generation, social media posts, and AI-driven video workflows.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- 🎬 **Programmatic Video Creation** - Define scenes using simple JSON
|
|
8
|
+
- 🎨 **AI Image Generation** - Built-in support for Google Imagen AI
|
|
9
|
+
- 🖼️ **Rich Media Support** - Text, images, and audio with transitions
|
|
10
|
+
- 🤖 **Agent-Friendly** - Designed for AI agents and automation
|
|
11
|
+
- 🎯 **Interactive Editor** - Web-based UI for visual editing
|
|
12
|
+
- ⚡ **Fast Rendering** - Powered by Playwright and FFmpeg
|
|
13
|
+
|
|
14
|
+
## Quick Start
|
|
15
|
+
|
|
16
|
+
### Installation
|
|
4
17
|
|
|
5
18
|
```bash
|
|
6
19
|
bun install
|
|
20
|
+
bun run build
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Basic Usage
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# Create a scene template
|
|
27
|
+
feedeas example basic > scene.json
|
|
28
|
+
|
|
29
|
+
# Validate the scene
|
|
30
|
+
feedeas validate scene.json
|
|
31
|
+
|
|
32
|
+
# Open interactive editor
|
|
33
|
+
feedeas edit
|
|
34
|
+
|
|
35
|
+
# Render to video
|
|
36
|
+
feedeas record --project scene.json
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Commands
|
|
40
|
+
|
|
41
|
+
### Video Creation
|
|
42
|
+
|
|
43
|
+
- `feedeas edit [dir]` - Start the interactive editor
|
|
44
|
+
- `feedeas taste [dir]` - Start the taste workspace UI
|
|
45
|
+
- `feedeas taste generate` - Generate fresh ideas from taste + memory
|
|
46
|
+
- `feedeas taste memory query` - Query structured taste memory entries
|
|
47
|
+
- `feedeas record` - Render scene to video
|
|
48
|
+
- `feedeas snap <time>` - Take a snapshot at specific time
|
|
49
|
+
- `feedeas validate <file>` - Validate scene JSON
|
|
50
|
+
|
|
51
|
+
### AI Image Generation
|
|
52
|
+
|
|
53
|
+
Generate images using Google's Imagen AI (via Gemini API):
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
# Setup (one-time): Get API key from https://aistudio.google.com/app/apikey
|
|
57
|
+
export GEMINI_API_KEY="your-api-key"
|
|
58
|
+
|
|
59
|
+
# Basic usage - saves to assets/mountain.png
|
|
60
|
+
feedeas imagine "A serene mountain landscape"
|
|
61
|
+
|
|
62
|
+
# Reel-ready portrait generation (recommended for 9:16 videos)
|
|
63
|
+
feedeas imagine "Electric SUV charging at dusk" --aspect-ratio 9:16 --image-size 2K -o ev_portrait.png
|
|
64
|
+
|
|
65
|
+
# Multiple images - saves to assets/pattern_1.png, pattern_2.png, etc.
|
|
66
|
+
feedeas imagine "Abstract art" -n 4 -o pattern.png
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
**Images save to `./assets/` by default** - perfect for video workflows!
|
|
70
|
+
|
|
71
|
+
`imagine` defaults to `--aspect-ratio auto`:
|
|
72
|
+
- If `scene_1.json` exists, it infers from `meta.width:meta.height`
|
|
73
|
+
- Otherwise it falls back to `9:16`
|
|
74
|
+
|
|
75
|
+
**[📖 Full Imagine Command Documentation](./docs/IMAGINE_COMMAND.md)**
|
|
76
|
+
|
|
77
|
+
### AI BGM Generation (Contract Draft)
|
|
78
|
+
|
|
79
|
+
Gemini-first command contract and backend request types for `feedeas bgm` are documented here:
|
|
80
|
+
|
|
81
|
+
**[📖 BGM Command Contract](./docs/BGM_COMMAND.md)**
|
|
82
|
+
|
|
83
|
+
Basic usage:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
# Generate 20s background music into assets/bgm.mp3
|
|
87
|
+
feedeas bgm "ambient cinematic underscore, no vocals" -d 20 -o bgm.mp3
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### Scene Management
|
|
91
|
+
|
|
92
|
+
- `feedeas example [type]` - Generate example scenes
|
|
93
|
+
- `feedeas set-scene <file>` - Create/update scene programmatically
|
|
94
|
+
- `feedeas inspect` - Inspect project assets
|
|
95
|
+
- `feedeas schema` - Show entity schema information
|
|
96
|
+
|
|
97
|
+
## Project Structure
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
your-project/
|
|
101
|
+
├── scene_1.json # Scene definition
|
|
102
|
+
├── assets/ # Images, audio files
|
|
103
|
+
│ ├── background.png
|
|
104
|
+
│ ├── music.mp3
|
|
105
|
+
│ └── ...
|
|
106
|
+
└── output.mp4 # Generated video
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Scene File Format
|
|
110
|
+
|
|
111
|
+
```json
|
|
112
|
+
{
|
|
113
|
+
"meta": {
|
|
114
|
+
"width": 1080,
|
|
115
|
+
"height": 1350,
|
|
116
|
+
"duration": 5
|
|
117
|
+
},
|
|
118
|
+
"entities": [
|
|
119
|
+
{
|
|
120
|
+
"id": "text-1",
|
|
121
|
+
"type": "text",
|
|
122
|
+
"text": "Hello, World!",
|
|
123
|
+
"startTime": 0,
|
|
124
|
+
"duration": 5,
|
|
125
|
+
"x": 100,
|
|
126
|
+
"y": 500,
|
|
127
|
+
"fontSize": 80,
|
|
128
|
+
"color": "#ffffff",
|
|
129
|
+
"enter": { "type": "fade", "duration": 0.5 }
|
|
130
|
+
}
|
|
131
|
+
]
|
|
132
|
+
}
|
|
7
133
|
```
|
|
8
134
|
|
|
9
|
-
|
|
135
|
+
For `image` entities, add `"fit": "smart"` to reduce accidental cropping on mismatched aspect ratios.
|
|
136
|
+
|
|
137
|
+
## Taste & Automation
|
|
138
|
+
|
|
139
|
+
Use the Taste workspace to continuously improve idea quality and freshness:
|
|
10
140
|
|
|
11
141
|
```bash
|
|
12
|
-
|
|
142
|
+
# Launch taste UI at /taste
|
|
143
|
+
feedeas taste
|
|
144
|
+
|
|
145
|
+
# Generate fresh ideas from taste/taste.md + taste/memory.md
|
|
146
|
+
feedeas taste generate -n 3 --mode sequential --json
|
|
147
|
+
|
|
148
|
+
# Save reviewer feedback into taste/memory.md
|
|
149
|
+
feedeas taste feedback --decision accepted --title "Cinematic forest reel" --tags forest,cinematic
|
|
150
|
+
|
|
151
|
+
# Create pending taste suggestions from memory patterns
|
|
152
|
+
feedeas taste suggest --json
|
|
153
|
+
|
|
154
|
+
# Apply a suggestion to taste/taste.md
|
|
155
|
+
feedeas taste apply --suggestion sug_2026-01-01_123456
|
|
156
|
+
|
|
157
|
+
# Query memory history
|
|
158
|
+
feedeas taste memory query --tag podcast --limit 10
|
|
13
159
|
```
|
|
14
160
|
|
|
15
|
-
|
|
161
|
+
Default files:
|
|
162
|
+
- `taste/taste.md` - Prompt blueprint (brand identity, focus areas, negatives, instructions)
|
|
163
|
+
- `taste/memory.md` - Structured `taste-memory` blocks used for freshness checks
|
|
164
|
+
- `taste/suggestions.md` - Pending/applied/rejected taste update proposals
|
|
165
|
+
|
|
166
|
+
CI/automation flow:
|
|
167
|
+
1. Prepare `GEMINI_API_KEY`.
|
|
168
|
+
2. Run `feedeas taste generate --taste-file taste/taste.md --memory-file taste/memory.md -n 1 --mode sequential --save --json`.
|
|
169
|
+
3. Append review outcomes with `feedeas taste feedback ...`.
|
|
170
|
+
4. Run `feedeas taste suggest` and review proposals.
|
|
171
|
+
5. Apply approved proposals using `feedeas taste apply --suggestion <id>`.
|
|
172
|
+
|
|
173
|
+
## Documentation
|
|
174
|
+
|
|
175
|
+
- [Imagine Command Guide](./docs/IMAGINE_COMMAND.md) - AI image generation
|
|
176
|
+
- [Taste Automation Guide](./docs/TASTE_AUTOMATION.md) - GitHub Actions + Docker setup
|
|
177
|
+
- Run `feedeas --help` for full CLI documentation
|
|
178
|
+
- Run `feedeas <command> --help` for command-specific help
|
|
179
|
+
|
|
180
|
+
## Development
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
# Run in development mode
|
|
184
|
+
bun run dev
|
|
185
|
+
|
|
186
|
+
# Build CLI and UI
|
|
187
|
+
bun run build
|
|
188
|
+
|
|
189
|
+
# Optional: embed PostHog key at build-time into CLI bundle
|
|
190
|
+
FEDEAS_POSTHOG_BUILD_KEY=phc_xxx bun run build
|
|
191
|
+
|
|
192
|
+
# Run CLI directly
|
|
193
|
+
bun run feedeas
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
## Requirements
|
|
197
|
+
|
|
198
|
+
- [Bun](https://bun.sh) v1.2.2 or later
|
|
199
|
+
- Node.js 20.19+ or 22.12+ (for Vite)
|
|
200
|
+
- FFmpeg (for video rendering)
|
|
201
|
+
- Gemini API key (for AI image generation) - Get free at https://aistudio.google.com/app/apikey
|
|
202
|
+
|
|
203
|
+
## License
|
|
204
|
+
|
|
205
|
+
This project was created using `bun init` in bun v1.2.2.
|
package/bin/feedeas.js
ADDED