Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

pyfunc/xedit

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xedit

Porównanie rozwiązań:

Cecha Edit1 (Node.js) Edit2 (Python) Edit3 (Go)
Rozmiar obrazu Docker ~150MB ~180MB ~25MB
Czas startu ~2s ~3s <1s
Zużycie RAM ~50MB ~80MB ~15MB
Edytor kodu CodeMirror Monaco Ace
Wizualizacja JSON JSONEditor (pełna) Podstawowa Zaawansowana
Wizualizacja YAML Drzewo Preview Preview
Wizualizacja XML Drzewo Preview Kolorowanie
Łatwość instalacji ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐

🏆 REKOMENDACJA: Edit1 (Node.js)

Dlaczego Edit1 jest najlepszy:

  1. Najprostsza instalacja - tylko npm install i npm start
  2. Najlepszy edytor wizualny - JSONEditor oferuje pełną edycję wizualną z tree/form/code view
  3. Najszybszy development - hot reload, bogaty ekosystem npm
  4. Najprostsza konfiguracja - Docker Compose gotowy do użycia

Szybki start dla każdego rozwiązania:

Edit1 (Node.js) - REKOMENDOWANE 🟢

# Utwórz folder projektu
mkdir edit1 && cd edit1

# Utwórz package.json
cat > package.json << 'EOF'
{
  "name": "edit1-visual-editor",
  "version": "1.0.0",
  "scripts": {
    "start": "node server.js"
  },
  "dependencies": {
    "express": "^4.18.2",
    "body-parser": "^1.20.2",
    "cors": "^2.8.5"
  }
}
EOF

# Utwórz Dockerfile
cat > Dockerfile << 'EOF'
FROM node:18-alpine
RUN apk add --no-cache git
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN mkdir -p /app/data
EXPOSE 3001
CMD ["npm", "start"]
EOF

# Utwórz docker-compose.yml
cat > docker-compose.yml << 'EOF'
version: '3.8'
services:
  edit1:
    build: .
    container_name: edit1-editor
    ports:
      - "3001:3001"
    volumes:
      - ./data:/app/data
      - ./public:/app/public
    restart: unless-stopped
EOF

# Utwórz skrypt uruchamiający
cat > edit1 << 'EOF'
#!/bin/bash
FILE=$1
if [ -z "$FILE" ]; then
    echo "Usage: edit1 <filename.json|yaml|xml>"
    exit 1
fi
docker-compose up -d --build
sleep 2
echo "Opening http://localhost:3001?file=$FILE"
open "http://localhost:3001?file=$FILE" 2>/dev/null || xdg-open "http://localhost:3001?file=$FILE" 2>/dev/null || echo "Open manually: http://localhost:3001?file=$FILE"
EOF

chmod +x edit1

# Skopiuj pliki server.js i public/index.html z artifactów powyżej

# Uruchom
./edit1 config.json

Edit2 (Python)

# Utwórz folder projektu  
mkdir edit2 && cd edit2

# Utwórz requirements.txt
cat > requirements.txt << 'EOF'
Flask==2.3.3
Flask-CORS==4.0.0
PyYAML==6.0.1
EOF

# Utwórz Dockerfile
cat > Dockerfile << 'EOF'
FROM python:3.11-slim
RUN apt-get update && apt-get install -y git && rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
RUN mkdir -p /app/data
EXPOSE 3002
CMD ["python", "app.py"]
EOF

# Skopiuj app.py i templates/index.html z artifactów

# Uruchom
docker build -t edit2 .
docker run -d -p 3002:3002 -v $(pwd)/data:/app/data edit2

Edit3 (Go)

# Utwórz folder projektu
mkdir edit3 && cd edit3

# Utwórz go.mod
cat > go.mod << 'EOF'
module edit3
go 1.21
require (
    github.com/gin-gonic/gin v1.9.1
    github.com/gin-contrib/cors v1.4.0
    gopkg.in/yaml.v3 v3.0.1
)
EOF

# Utwórz Dockerfile
cat > Dockerfile << 'EOF'
FROM golang:1.21-alpine AS builder
RUN apk add --no-cache git
WORKDIR /app
COPY go.mod go.sum ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 GOOS=linux go build -o edit3 .

FROM alpine:latest
RUN apk --no-cache add ca-certificates git
WORKDIR /app
COPY --from=builder /app/edit3 .
COPY --from=builder /app/static ./static
RUN mkdir -p /app/data
EXPOSE 3003
CMD ["./edit3"]
EOF

# Skopiuj main.go i static/index.html z artifactów

# Uruchom
docker build -t edit3 .
docker run -d -p 3003:3003 -v $(pwd)/data:/app/data edit3

Funkcjonalności wspólne dla wszystkich rozwiązań:

Edycja wizualna i tekstowa jednocześnieKolorowanie składniAutomatyczne zapisywanie do GitHistoria wersji z możliwością przywracaniaWalidacja formatów przed zapisemDocker dla łatwego deploymentuBrak konieczności konfiguracji

Użycie:

# Dla każdego edytora:
edit1 config.yaml    # Node.js (port 3001)
edit2 data.json      # Python (port 3002)  
edit3 settings.xml   # Go (port 3003)

# Pliki są automatycznie:
# - Tworzone jeśli nie istnieją
# - Wersjonowane w Git
# - Zapisywane w folderze ./data

Dodatkowe ulepszenia (opcjonalne):

  1. Instalacja globalna (dla Edit1):
npm install -g edit1-visual-editor
edit1 myfile.json
  1. Aliasy w ~/.bashrc:
alias edit-json='edit1'
alias edit-yaml='edit1'
alias edit-xml='edit1'
  1. Integracja z VS Code:
{
  "terminal.integrated.commandsToSkipShell": ["edit1", "edit2", "edit3"]
}

Wybierz Edit1 (Node.js) jeśli chcesz najłatwiejsze rozwiązanie z najlepszym edytorem wizualnym! 🚀

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Morty Proxy This is a proxified and sanitized view of the page, visit original site.