mirror of
https://github.com/Dvorinka/MyClubServer.git
synced 2026-06-03 18:22:57 +00:00
240 lines
4.5 KiB
Markdown
240 lines
4.5 KiB
Markdown
# 📦 Installation Guide - MyUIbrix Elementor Features
|
|
|
|
## Quick Setup
|
|
|
|
### Step 1: Install Frontend Dependencies
|
|
|
|
```bash
|
|
cd frontend
|
|
npm install react-markdown react-syntax-highlighter
|
|
npm install --save-dev @types/react-syntax-highlighter
|
|
```
|
|
|
|
### Step 2: Backend Routes Setup
|
|
|
|
Add to your `main.go`:
|
|
|
|
```go
|
|
import "your-app/internal/controllers"
|
|
|
|
// Setup documentation routes
|
|
docsController := controllers.NewDocsController("./DOCS")
|
|
adminDocs := router.Group("/api/v1/admin/docs")
|
|
adminDocs.Use(middleware.RequireAuth())
|
|
adminDocs.Use(middleware.RequireAdmin())
|
|
{
|
|
adminDocs.GET("/file/*filepath", docsController.GetDocFile)
|
|
adminDocs.GET("/list", docsController.ListDocFiles)
|
|
adminDocs.GET("/search", docsController.SearchDocs)
|
|
}
|
|
```
|
|
|
|
### Step 3: Add Admin Route
|
|
|
|
In your admin routes file (e.g., `frontend/src/App.tsx`):
|
|
|
|
```tsx
|
|
import DevDocsPage from './pages/admin/DevDocsPage';
|
|
|
|
// Add route
|
|
<Route path="/admin/docs" element={<DevDocsPage />} />
|
|
```
|
|
|
|
### Step 4: Add Navigation Link
|
|
|
|
In your admin navigation component:
|
|
|
|
```tsx
|
|
import { FiBook } from 'react-icons/fi';
|
|
|
|
<NavLink to="/admin/docs">
|
|
<HStack>
|
|
<Icon as={FiBook} />
|
|
<Text>Developer Docs</Text>
|
|
</HStack>
|
|
</NavLink>
|
|
```
|
|
|
|
### Step 5: Verify Files
|
|
|
|
Ensure all these files exist:
|
|
- ✅ `frontend/src/components/editor/InlineTextEditor.tsx`
|
|
- ✅ `frontend/src/components/editor/CustomCSSEditor.tsx`
|
|
- ✅ `frontend/src/components/editor/ColumnLayoutManager.tsx`
|
|
- ✅ `frontend/src/components/editor/ContextualAdminLinks.tsx`
|
|
- ✅ `frontend/src/components/editor/VisualStylePanel.tsx` (enhanced)
|
|
- ✅ `frontend/src/pages/admin/DevDocsPage.tsx`
|
|
- ✅ `internal/controllers/docs_controller.go`
|
|
- ✅ All `.md` files in `/DOCS`
|
|
|
|
---
|
|
|
|
## Testing
|
|
|
|
### Test Documentation Viewer
|
|
|
|
1. Navigate to `/admin/docs`
|
|
2. Should see list of documentation files
|
|
3. Click any document to view
|
|
4. Test search functionality
|
|
5. Try downloading a document
|
|
|
|
### Test Elementor Features
|
|
|
|
1. Go to any page (e.g., homepage)
|
|
2. Add `?myuibrix=edit` to URL
|
|
3. Click edit button (bottom left)
|
|
4. Select any element
|
|
5. Test all 5 tabs:
|
|
- Content
|
|
- Style
|
|
- Layout
|
|
- CSS
|
|
- Admin
|
|
|
|
### Test Inline Editor
|
|
|
|
1. In edit mode, click any text
|
|
2. Toolbar should appear
|
|
3. Test Bold, Italic, Underline
|
|
4. Test link insertion
|
|
5. Changes should auto-save
|
|
|
|
### Test Column Layouts
|
|
|
|
1. Select element
|
|
2. Open Layout tab
|
|
3. Choose a template
|
|
4. Element should split into columns
|
|
5. Save and reload to verify persistence
|
|
|
|
### Test Custom CSS
|
|
|
|
1. Select element
|
|
2. Open CSS tab
|
|
3. Write custom CSS
|
|
4. Enable preview
|
|
5. Apply and save
|
|
|
|
---
|
|
|
|
## Troubleshooting
|
|
|
|
### "Module not found" errors
|
|
|
|
**Solution**: Install missing dependencies
|
|
```bash
|
|
npm install react-markdown react-syntax-highlighter
|
|
npm install --save-dev @types/react-syntax-highlighter
|
|
```
|
|
|
|
### Documentation viewer shows "Document Not Found"
|
|
|
|
**Solution**: Check backend routes are configured and DOCS folder is accessible
|
|
|
|
### Custom CSS not applying
|
|
|
|
**Solution**:
|
|
- Check for syntax errors
|
|
- Enable preview mode first
|
|
- Verify CSS is valid
|
|
- Check browser console for errors
|
|
|
|
### Inline editor not appearing
|
|
|
|
**Solution**:
|
|
- Ensure element has proper `data-element` attribute
|
|
- Check if edit mode is active
|
|
- Verify admin permissions
|
|
|
|
---
|
|
|
|
## Configuration
|
|
|
|
### Environment Variables
|
|
|
|
No additional environment variables needed.
|
|
|
|
### Database
|
|
|
|
No database migrations required for these features.
|
|
|
|
### Permissions
|
|
|
|
All features require admin authentication.
|
|
|
|
---
|
|
|
|
## Deployment
|
|
|
|
### Development
|
|
|
|
```bash
|
|
# Frontend
|
|
cd frontend
|
|
npm run dev
|
|
|
|
# Backend
|
|
go run main.go
|
|
```
|
|
|
|
### Production
|
|
|
|
```bash
|
|
# Frontend
|
|
cd frontend
|
|
npm run build
|
|
|
|
# Backend
|
|
go build -o app main.go
|
|
./app
|
|
```
|
|
|
|
### Docker
|
|
|
|
If using Docker, ensure DOCS folder is included:
|
|
|
|
```dockerfile
|
|
COPY DOCS /app/DOCS
|
|
```
|
|
|
|
---
|
|
|
|
## Uninstallation
|
|
|
|
To remove these features:
|
|
|
|
1. Remove frontend components:
|
|
```bash
|
|
rm frontend/src/components/editor/InlineTextEditor.tsx
|
|
rm frontend/src/components/editor/CustomCSSEditor.tsx
|
|
rm frontend/src/components/editor/ColumnLayoutManager.tsx
|
|
rm frontend/src/components/editor/ContextualAdminLinks.tsx
|
|
rm frontend/src/pages/admin/DevDocsPage.tsx
|
|
```
|
|
|
|
2. Remove backend controller:
|
|
```bash
|
|
rm internal/controllers/docs_controller.go
|
|
```
|
|
|
|
3. Remove routes from `main.go`
|
|
|
|
4. Remove navigation link
|
|
|
|
5. Revert `VisualStylePanel.tsx` changes
|
|
|
|
---
|
|
|
|
## Support
|
|
|
|
For issues:
|
|
1. Check `/admin/docs` for documentation
|
|
2. Review `COMPLETE_IMPLEMENTATION_SUMMARY.md`
|
|
3. Check browser console for errors
|
|
4. Verify all dependencies installed
|
|
|
|
---
|
|
|
|
**Status**: ✅ Ready for Installation
|