{"id":31943095,"url":"https://github.com/pyfunc/edix","last_synced_at":"2025-10-14T09:48:41.659Z","repository":{"id":315804519,"uuid":"1060578180","full_name":"pyfunc/edix","owner":"pyfunc","description":"edix - uniwersalny edytor struktur danych z dynamicznym tworzeniem tabel SQL, wbudowanym frontendem i możliwością integracji z istniejącymi projektami.","archived":false,"fork":false,"pushed_at":"2025-09-20T19:53:00.000Z","size":118,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-20T21:25:26.724Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pyfunc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-20T07:04:52.000Z","updated_at":"2025-09-20T19:53:04.000Z","dependencies_parsed_at":"2025-09-20T21:25:30.726Z","dependency_job_id":"fd1c9cae-f3be-487b-b472-4eea2154ee81","html_url":"https://github.com/pyfunc/edix","commit_stats":null,"previous_names":["pyfunc/edix"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/pyfunc/edix","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyfunc%2Fedix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyfunc%2Fedix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyfunc%2Fedix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyfunc%2Fedix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pyfunc","download_url":"https://codeload.github.com/pyfunc/edix/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyfunc%2Fedix/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279018579,"owners_count":26086404,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-14T09:48:38.361Z","updated_at":"2025-10-14T09:48:41.646Z","avatar_url":"https://github.com/pyfunc.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Edix - Uniwersalny Edytor Struktur Danych\n\n## 📋 Spis treści\n1. [Wprowadzenie](#-wprowadzenie)\n2. [Wymagania systemowe](#-wymagania-systemowe)\n3. [Instalacja](#-instalacja)\n4. [Konfiguracja](#-konfiguracja)\n5. [Uruchomienie](#-uruchomienie)\n6. [Testowanie](#-testowanie)\n7. [Rozwój](#-rozwój)\n8. [Wdrażanie](#-wdrażanie)\n9. [Licencja](#-licencja)\n\n## 🌟 Wprowadzenie\n\nEdix to zaawansowany edytor struktur danych z dynamicznym tworzeniem tabel SQL, wbudowanym frontendem i możliwością integracji z istniejącymi projektami. Pozwala na definiowanie i zarządzanie strukturami danych za pomocą intuicyjnego interfejsu użytkownika.\n\n## 💻 Wymagania systemowe\n\n- Python 3.8+\n- Node.js 16+ (tylko do rozwoju frontendu)\n- SQLite (domyślnie) lub PostgreSQL/MySQL\n- System operacyjny: Linux, macOS, Windows (z WSL2 zalecane dla Windows)\n\n## 📥 Instalacja\n\n### Środowisko wirtualne (zalecane)\n\n```bash\n# Utwórz i aktywuj środowisko wirtualne\npython -m venv venv\nsource venv/bin/activate  # Linux/macOS\n# lub\n# .\\venv\\Scripts\\activate  # Windows\n\n# Zainstaluj zależności\npip install -e .\n\n# Zainstaluj zależności deweloperskie\npip install -e \".[dev]\"\n```\n\n### Instalacja frontendu\n\n```bash\ncd frontend_src\nnpm install\nnpm run build\ncd ..\n```\n\n## ⚙️ Konfiguracja\n\nSkopiuj plik `.env.example` do `.env` i dostosuj ustawienia:\n\n```bash\ncp .env.example .env\n```\n\nPrzykładowa konfiguracja:\n```env\n# Tryb działania (development, production, test)\nAPP_ENV=development\n\n# Ustawienia bazy danych\nDATABASE_URL=sqlite+aiosqlite:///./edix.db\n# Dla PostgreSQL:\n# DATABASE_URL=postgresql+asyncpg://user:password@localhost/edix\n\n# Ustawienia bezpieczeństwa\nSECRET_KEY=twoj_tajny_klucz\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=1440\n\n# Ustawienia aplikacji\nAPI_PREFIX=/api/v1\nFRONTEND_URL=http://localhost:3000\n```\n\n## 🚀 Uruchomienie\n\n### Tryb deweloperski (z automatycznym przeładowaniem)\n\n```bash\n# Uruchom serwer backendowy\nuvicorn edix.main:app --reload\n\n# W osobnym terminalu uruchom frontend w trybie deweloperskim\ncd frontend_src\nnpm run dev\n```\n\n### Tryb produkcyjny\n\n```bash\n# Zbuduj frontend\ncd frontend_src\nnpm run build\ncd ..\n\n# Uruchom serwer produkcyjny\nuvicorn edix.main:app --host 0.0.0.0 --port 8000\n```\n\nAplikacja będzie dostępna pod adresem: http://localhost:8000\n\n## 🧪 Testowanie\n\n### Testy jednostkowe (backend)\n\n```bash\n# Uruchom wszystkie testy\npytest\n\n# Uruchom testy z pokryciem kodu\npytest --cov=edix --cov-report=term-missing\n\n# Uruchom testy z generowaniem raportu HTML\npytest --cov=edix --cov-report=html\n```\n\n### Testy integracyjne\n\n```bash\n# Uruchom testy integracyjne\npytest tests/integration\n```\n\n### Testy frontendowe\n\n```bash\ncd frontend_src\n\n# Uruchom testy jednostkowe\nnpm test\n\n# Uruchom testy z pokryciem\nnpm run test:coverage\n```\n\n### Testy wydajnościowe\n\n```bash\n# Uruchom testy wydajnościowe z użyciem locust\nlocust -f tests/performance/locustfile.py\n```\n\n## 🔧 Rozwój\n\n### Struktura projektu\n\n```\nedix/\n├── edix/                # Kod źródłowy Pythona\n│   ├── api/             # Endpointy API\n│   ├── core/            # Logika biznesowa\n│   ├── crud/            # Operacje na bazie danych\n│   ├── db/              # Konfiguracja bazy danych\n│   ├── models/          # Modele Pydantic i SQLAlchemy\n│   ├── schemas/         # Schematy Pydantic\n│   ├── static/          # Pliki statyczne\n│   └── templates/       # Szablony HTML\n├── frontend_src/        # Kod źródłowy frontendu\n│   ├── public/          # Zasoby statyczne\n│   └── src/             # Kod React\n├── migrations/          # Migracje bazy danych\n├── tests/               # Testy\n│   ├── unit/            # Testy jednostkowe\n│   ├── integration/     # Testy integracyjne\n│   └── performance/     # Testy wydajnościowe\n├── .env                # Zmienne środowiskowe\n├── .gitignore\n├── pyproject.toml      # Konfiguracja projektu Python\n└── README.md           # Ten plik\n```\n\n### Tworzenie migracji bazy danych\n\n```bash\n# Utwórz nową migrację\nalembic revision --autogenerate -m \"Opis zmiany\"\n\n# Zastosuj migracje\nalembic upgrade head\n\n# Cofnij migrację\nalembic downgrade -1\n```\n\n## 🚀 Wdrażanie\n\n### Docker\n\n```bash\n# Zbuduj obrazy\ndocker-compose build\n\n# Uruchom kontenery\ndocker-compose up -d\n\n# Zatrzymaj kontenery\ndocker-compose down\n```\n\n### Systemd (produkcja)\n\nPrzykładowa konfiguracja usługi systemd (`/etc/systemd/system/edix.service`):\n\n```ini\n[Unit]\nDescription=Edix Application\nAfter=network.target\n\n[Service]\nUser=www-data\nGroup=www-data\nWorkingDirectory=/path/to/edix\nEnvironment=\"PATH=/path/to/venv/bin\"\nExecStart=/path/to/venv/bin/uvicorn edix.main:app --host 0.0.0.0 --port 8000\nRestart=always\n\n[Install]\nWantedBy=multi-user.target\n```\n\n## 📄 Licencja\n\nTen projekt jest dostępny na licencji MIT. Zobacz plik [LICENSE](LICENSE) aby uzyskać więcej informacji.\n\n## 👥 Wkład\n\n1. Sklonuj repozytorium\n2. Utwórz nowy branch (`git checkout -b feature/nazwa-funkcjonalnosci`)\n3. Zatwierdź zmiany (`git commit -m 'Dodano nową funkcjonalność'`)\n4. Wypchnij zmiany (`git push origin feature/nazwa-funkcjonalnosci`)\n5. Otwórz Pull Request\n- Zarządzanie produktami/katalogami\n\nCały projekt jest **production-ready** i może być od razu opublikowany na PyPI, zintegrowany z istniejącymi aplikacjami lub użyty jako standalone CMS.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpyfunc%2Fedix","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpyfunc%2Fedix","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpyfunc%2Fedix/lists"}