Skip to content

Commit 1b72c55

Browse files
committed
Create HydeFront-v4-plan.md
1 parent fc18bc9 commit 1b72c55

File tree

1 file changed

+79
-0
lines changed

1 file changed

+79
-0
lines changed

HydeFront-v4-plan.md

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# HydeFront v4 Development Plan
2+
3+
## Abstract
4+
5+
We are updating how HydeFront is handled for v2. Instead of declaring styles directly in HydeFront alongside Tailwind, we will refactor those styles into Tailwind.
6+
7+
HydeFront will serve two main purposes:
8+
9+
1. It will continue to include the precompiled `app.css` file bundled with new apps, available through the HydeFront CDN.
10+
2. It will act as a component library, allowing users to include granular styles from `app.css`, which we will preconfigure.
11+
12+
For example, users can include our Tailwind styles granularly using just the `app.css` file from the HydeFront package. This file will be compiled alongside Tailwind. If users prefer customization, they can remove the import and add the specific styles they want.
13+
14+
## Goals
15+
16+
Based on the codebase, here's a detailed plan to refactor HydeFront:
17+
18+
### Phase 1: Setup
19+
- [ ] Create new branch `feature/hydefront-v4`
20+
- [ ] Update HydeFront version to 4.0.0-dev in package.json
21+
- [ ] Create new directory structure in HydeFront:
22+
```
23+
src/
24+
components/
25+
presets/
26+
app.css
27+
```
28+
29+
### Phase 2: Component Migration
30+
- [ ] Audit current styles in hyde.scss (reference: `packages/hydefront/hyde.scss`)
31+
- [ ] Create individual Tailwind component files for:
32+
- [ ] Documentation styles
33+
- [ ] Search functionality
34+
- [ ] Sidebar components
35+
- [ ] Markdown typography
36+
- [ ] Code blocks
37+
- [ ] Blockquotes
38+
- [ ] Move Alpine.js utilities to separate component file
39+
40+
### Phase 3: Preset Configuration
41+
- [ ] Create base preset that includes all current functionality
42+
- [ ] Create minimal preset with only core styles
43+
- [ ] Create documentation preset focused on docs-specific styles
44+
- [ ] Update the app.css compilation process to use presets
45+
46+
### Phase 4: Build System Updates
47+
- [ ] Update Vite config to handle new component structure
48+
- [ ] Modify build scripts to:
49+
- [ ] Compile individual components
50+
- [ ] Generate preset bundles
51+
- [ ] Create the main app.css bundle
52+
- [ ] Update the CDN distribution process
53+
54+
### Phase 5: Framework Integration
55+
- [ ] Update Hyde Framework to support new HydeFront structure
56+
- [ ] Modify Asset facade to handle granular component loading
57+
- [ ] Update default Hyde project scaffold
58+
- [ ] Create migration guide for existing projects
59+
60+
### Phase 6: Documentation
61+
- [ ] Document new component system
62+
- [ ] Create examples for common customization scenarios
63+
- [ ] Update HydeFront README
64+
- [ ] Add migration guide to Hyde docs
65+
66+
### Phase 7: Testing & Release
67+
- [ ] Create test suite for components
68+
- [ ] Test backwards compatibility
69+
- [ ] Create release candidate
70+
- [ ] Update CDN infrastructure
71+
- [ ] Release v4.0.0
72+
73+
### Phase 8: Cleanup
74+
- [ ] Remove deprecated files and methods
75+
- [ ] Update all references to old HydeFront structure
76+
- [ ] Archive v3 documentation
77+
- [ ] Update GitHub workflows
78+
79+
This plan maintains backwards compatibility while introducing the new component system. The main app.css will still be available through CDN for existing projects.

0 commit comments

Comments
 (0)