Oleg Proskurin
c185ea3ff4
feat: add Phase 1 foundation for API v2.0
...
Implement foundational components for Banatie API v2.0 with dual alias system,
flows support, and comprehensive type safety.
**Type Definitions:**
- Add models.ts with database types (Generation, Image, Flow, etc.)
- Add requests.ts with all v2 API request types
- Add responses.ts with standardized response types and converters
- Support for pagination, filters, and complex relations
**Constants:**
- Define technical aliases (@last, @first, @upload)
- Define reserved aliases and validation patterns
- Add rate limits for master/project keys (2-bucket system)
- Add pagination, image, generation, and flow limits
- Comprehensive error messages and codes
**Validators:**
- aliasValidator: Format validation, reserved alias checking
- paginationValidator: Bounds checking with normalization
- queryValidator: UUID, aspect ratio, focal point, date range validation
**Helpers:**
- paginationBuilder: Standardized pagination response construction
- hashHelper: SHA-256 utilities for caching and file deduplication
- queryHelper: Reusable WHERE clause builders with soft delete support
**Core Services:**
- AliasService: 3-tier alias resolution (technical → flow → project)
- Technical alias computation (@last, @first, @upload)
- Flow-scoped alias lookup from JSONB
- Project-scoped alias lookup with uniqueness
- Conflict detection and validation
- Batch resolution support
**Dependencies:**
- Add drizzle-orm to api-service for direct ORM usage
All Phase 1 code is type-safe with zero TypeScript errors.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 21:53:50 +07:00
Oleg Proskurin
a7dc96d1a5
fix: update config
2025-10-26 19:28:31 +07:00
Oleg Proskurin
a397de80e9
fix: upload page
2025-10-26 19:13:48 +07:00
Oleg Proskurin
349abc2071
fix: scroll position
2025-10-26 18:38:44 +07:00
Oleg Proskurin
b4e5a05ae6
feat: improve
2025-10-26 18:03:17 +07:00
Oleg Proskurin
d6a9cd6990
feat: add page-context
2025-10-26 17:37:23 +07:00
Oleg Proskurin
2f8d239da0
feat: switch to sections
2025-10-26 16:33:18 +07:00
Oleg Proskurin
ab85b5e1fa
feat: add sections components
2025-10-25 22:01:26 +07:00
Oleg Proskurin
d7c230fae8
feat: add sub nav to admin section
2025-10-25 20:04:43 +07:00
Oleg Proskurin
b9a8ca8368
refactor: switch landing from DB to api requests
2025-10-25 18:58:01 +07:00
Oleg Proskurin
d1806bfd7e
feat: enhance api key api
2025-10-25 18:57:19 +07:00
Oleg Proskurin
a4842e2cd4
fix: focus
2025-10-24 23:24:38 +07:00
Oleg Proskurin
d5fe272460
fix: styles
2025-10-24 23:08:53 +07:00
Oleg Proskurin
78bff3f2ed
fix: mobile position
2025-10-24 22:48:10 +07:00
Oleg Proskurin
7b8c8ec5e8
feat: add mobile widget view
2025-10-23 23:13:50 +07:00
Oleg Proskurin
15eb364ebd
fix: widget position
2025-10-23 22:27:51 +07:00
Oleg Proskurin
daa8117ce5
add apikey widget
2025-10-23 22:14:06 +07:00
Oleg Proskurin
4caa475f30
feat: start apikey component
2025-10-22 23:01:37 +07:00
Oleg Proskurin
9facc1621c
feat: init apikey widget
2025-10-22 22:39:56 +07:00
Oleg Proskurin
da6887d41c
feat: update navbar
2025-10-21 23:31:08 +07:00
Oleg Proskurin
f90fd8f65a
feat: add DocPage
2025-10-21 22:47:45 +07:00
Oleg Proskurin
da33f96c35
feat: improve docs layout
2025-10-21 20:57:51 +07:00
Oleg Proskurin
813e0b186c
feat: extract components
2025-10-18 01:14:41 +07:00
Oleg Proskurin
94c8aafe5b
chore: sort components folders
2025-10-17 23:45:10 +07:00
Oleg Proskurin
a272c8d74f
feat: leave final variant
2025-10-17 23:32:20 +07:00
Oleg Proskurin
bd46f63ac8
fix: widget
2025-10-16 15:59:02 +07:00
Oleg Proskurin
7368d287e9
feat: update interactive snippet
2025-10-15 00:31:49 +07:00
Oleg Proskurin
658f1420db
feat: polish
2025-10-14 01:07:50 +07:00
Oleg Proskurin
1d1a88d073
feat: final variant ready
2025-10-14 00:54:34 +07:00
Oleg Proskurin
da47634805
chore: preview variants
2025-10-13 00:19:57 +07:00
Oleg Proskurin
b0943606e1
fix: ts issue
2025-10-12 23:01:52 +07:00
Oleg Proskurin
7416c6d441
chore: code cleanup
2025-10-12 22:59:24 +07:00
Oleg Proskurin
e0924f9c4b
fix: get images endpoint
2025-10-12 22:55:37 +07:00
Oleg Proskurin
3cbb366a9d
chore: update docs
2025-10-12 22:19:10 +07:00
Oleg Proskurin
9a9c7260e2
fix: return correct codes
2025-10-12 22:13:34 +07:00
Oleg Proskurin
691e472a2e
chore: add todo
2025-10-12 22:05:23 +07:00
Oleg Proskurin
55c8d23c1b
feat: update config
2025-10-12 21:49:42 +07:00
Oleg Proskurin
dd48d4e1a1
feat: update setup
2025-10-12 21:12:58 +07:00
Oleg Proskurin
eb11db753e
chore: debug logs
2025-10-12 16:42:33 +07:00
Oleg Proskurin
1b3a357b5d
feat: add gallery
2025-10-12 00:30:16 +07:00
Oleg Proskurin
b7bb37f2a7
feat: adjust image card
2025-10-11 21:46:27 +07:00
Oleg Proskurin
f942480fc8
feat: filename sanitization
2025-10-11 18:11:56 +07:00
Oleg Proskurin
15f9dc3526
feat: show upload snippet on input
2025-10-11 17:17:31 +07:00
Oleg Proskurin
5aef778fc5
feat: add code examples to upload page
2025-10-11 16:08:08 +07:00
Oleg Proskurin
f080063746
feat: upload page
2025-10-11 01:02:13 +07:00
Oleg Proskurin
237443194f
feat: add file upload endpoint
2025-10-11 00:08:51 +07:00
Oleg Proskurin
6944e6b750
feat: detect network issues
2025-10-10 00:17:29 +07:00
Oleg Proskurin
83303f8890
feat: remove unused endpoints
2025-10-09 23:48:25 +07:00
Oleg Proskurin
2a4ba8f4ed
feat: cover Enhancemet service by tests
2025-10-09 23:37:17 +07:00
Oleg Proskurin
df6596d53c
chore: prettier
2025-10-09 23:16:42 +07:00
Oleg Proskurin
3462971e30
feat: add prettier
2025-10-09 22:48:29 +07:00
Oleg Proskurin
1ea8492e21
refactor: expand enhancement service
2025-10-08 23:41:02 +07:00
Oleg Proskurin
a97029a2b4
feat: log enhancement work
2025-10-08 22:19:06 +07:00
Oleg Proskurin
7c31644824
feat: add meta tags
2025-10-08 00:03:08 +07:00
Oleg Proskurin
f63c89a991
feat: update landing
2025-10-07 22:38:03 +07:00
Oleg Proskurin
847145c385
feat: update API
2025-10-07 22:28:27 +07:00
Oleg Proskurin
63aa812f5e
chore: prettify
2025-10-07 22:05:00 +07:00
Oleg Proskurin
585b446ca5
feat: add aspect ratio
2025-10-07 21:13:05 +07:00
Oleg Proskurin
620a2a9caa
chore: update the model
2025-10-06 23:41:26 +07:00
Oleg Proskurin
367f1d1946
feat: log generation requests
2025-10-06 23:25:20 +07:00
Oleg Proskurin
13e8824000
feat: improve UI
2025-10-06 00:25:21 +07:00
Oleg Proskurin
86de9e8270
save apikey
2025-10-06 00:21:24 +07:00
Oleg Proskurin
0c0907ef7e
feat: improve options panel
2025-10-06 00:14:30 +07:00
Oleg Proskurin
36e5b910e9
feat: apply enchancements
2025-10-06 00:00:42 +07:00
Oleg Proskurin
680d2d2bad
feat: improve demo page
2025-10-05 23:30:49 +07:00
Oleg Proskurin
97502ddae1
fix: demo page inlanding
2025-10-05 19:41:04 +07:00
Oleg Proskurin
bfff9b49ec
fix: org project and apikey creating
2025-10-05 18:45:15 +07:00
Oleg Proskurin
bdf2c80782
feat: stored under org/project path
2025-10-05 17:36:01 +07:00
Oleg Proskurin
e2cfd6e27f
fix: service config
2025-10-05 16:50:09 +07:00
Oleg Proskurin
91ba71cc23
fix: image paths
2025-10-04 01:42:58 +07:00
Oleg Proskurin
960183c9c4
fix: CORS settings
2025-10-04 01:29:59 +07:00
Oleg Proskurin
ea680f4c5e
feat: add demo page
2025-10-04 01:20:51 +07:00
Oleg Proskurin
c6f359c126
fix: pass organization id
2025-10-04 00:13:02 +07:00
Oleg Proskurin
bd0cf2d70a
feat: add keys pages
2025-10-03 00:14:02 +07:00
Oleg Proskurin
af8b89b473
feat: add deploy command
2025-10-02 00:05:10 +07:00
Oleg Proskurin
10e84c4d73
feat: update nextjs config
2025-10-01 23:34:26 +07:00
Oleg Proskurin
7d2c038054
feat: update footer
2025-10-01 23:01:28 +07:00
Oleg Proskurin
5626c686c5
feat: update styles
2025-10-01 22:51:51 +07:00
Oleg Proskurin
086eedc8ac
feat: add logo
2025-10-01 22:39:22 +07:00
Oleg Proskurin
fde488d471
feat: add landing page
2025-10-01 22:09:36 +07:00
Oleg Proskurin
35df8a031d
fix: add apikeys
2025-10-01 21:29:10 +07:00
Oleg Proskurin
298898f79d
feat: implement apikey auth
2025-10-01 00:14:14 +07:00
Oleg Proskurin
f572428a87
fix: image generation
2025-09-29 22:49:32 +07:00
Oleg Proskurin
babcbe29db
feat: move to monorepo
2025-09-29 21:58:43 +07:00