GN⁺: 브라우저에서 파이썬을 실행하는 오픈 소스 플랫폼 PyScript
(pyscript.net)PyScript 소개
- PyScript는 브라우저에서 Python을 실행할 수 있는 오픈 소스 플랫폼임
- MicroPython v1.24.0-preview.47.g88513d122 사용
- PyScript.com은 무료이며 사용하기 쉬움
문서
- 초보자와 고급 사용자 모두를 위한 문서 제공
예제
- PyScript의 기능을 보여주는 예제 제공
커뮤니티
- 다른 PyScript 사용자들과 연결할 수 있는 커뮤니티 제공
- Twitter에서 @pyscript_dev 팔로우 가능
PyScript의 철학
- PyScript는 디지털 권한 부여의 철학을 중심으로 함
- 웹은 전 세계에서 가장 널리 사용되는 컴퓨팅 플랫폼이며, Python은 가장 인기 있는 프로그래밍 언어 중 하나임
- PyScript를 사용하면 브라우저가 있는 곳 어디에서나 Python을 실행할 수 있음
PyScript의 특징
- 쉬움: 복잡한 설치 없이 브라우저에서 앱 실행 가능
- 표현력: 강력하고 배우기 쉬운 언어인 Python으로 앱 생성 가능
- 확장성: 비싼 인프라가 필요 없으며 사용자의 브라우저에서 코드 실행 가능
- 공유 가능: 애플리케이션은 웹의 URL로 공유 가능
- 보편성: 브라우저가 실행되는 곳 어디에서나 코드 실행 가능
- 안전성: 브라우저라는 가장 검증된 컴퓨팅 플랫폼에서 PyScript 실행 가능
- 강력함: 웹과 Python의 장점을 결합
소스 코드
- PyScript Development Team이 개발
- 2022년 Anaconda, Inc.에서 시작됨
GN⁺의 정리
- PyScript는 브라우저에서 Python을 실행할 수 있게 하여 디지털 권한 부여를 목표로 함
- 설치가 필요 없고, 어디서나 실행 가능하며, 공유가 쉬운 점이 큰 장점임
- Python과 웹의 장점을 결합하여 강력한 애플리케이션을 만들 수 있음
- 비슷한 기능을 가진 프로젝트로는 Brython, Transcrypt 등이 있음
Hacker News 의견
-
Dallas 범죄 통계 대시보드 링크 공유
- https://crimede-coder.com/graphs/Dallas_Dashboard
- 시작 시 Python 라이브러리 설치와 5MB 데이터셋 로딩으로 약 1분 소요
- 실행 후 반응 속도 빠름
- iPhone에서도 잘 작동함
-
많은 기업들이 Tableau 무료 버전을 사용하여 데이터를 수동으로 업데이트함
- 무료 버전은 데이터 저장소와 직접 연결 불가
- GitHub Actions를 사용하여 CSV 파일을 환경에 불러오는 무료 대안 제시
-
홈페이지와 문서를 읽어도 이해가 어려움
- 직접 시도해본 결과, 웹사이트에 "Hello World"를 표시할 수 있음
- PyScript가 Python 코드를 JavaScript로 변환하는 스크립트로 보임
-
개발자들이 유지보수하는 코드에 새로운 어려움이 생김
- 과거에는 훈련되지 않은 컨설턴트와 VB 또는 Delphi 사용
- 이후 JS와 jQuery, SQL 인젝션 혼합
- 이제 데이터 과학자와 PyScript 사용자들이 새로운 도전에 직면
-
휴대폰 성능이 매년 빨라지므로 속도를 더 늦추는 방법을 찾아야 함
-
Pyodide와의 차이점 질문
- Pyodide 링크: https://pyodide.org/en/stable/
-
PyScript를 사용하여 브라우저에서 Python CLI 앱 실행 시도
- 종속성 문제로 인해 해킹처럼 느껴짐
- Pydantic 2.x 사용 불가로 래퍼 클래스 생성 필요
- 일부 로직을 JavaScript에 넣어야 했음
- 간단한 UI와 Python 코드 위에 커스텀 UI 로직이 필요한 경우 유용할 수 있음
- Streamlit 또는 Gradio가 더 적합할 수 있음
- GitHub 저장소: https://github.com/data-catering/data-contract-playground
- 웹사이트: https://data-catering.github.io/data-contract-playground/
-
실질적인 사용 사례를 찾기 어려움
- ML 모델을 Onnx로 빌드하여 브라우저 기반 앱을 JS/TS 대신 효율적으로 구축할 수 있음
- Onnx 링크: https://onnxruntime.ai/docs/tutorials/web/
-
PyScript를 사용하여 Vue.js에서 영감을 받은 프론트엔드 프레임워크 작성
-
Brython과 동일한 개념인지 질문
- Brython 링크: https://brython.info/
- GitHub 링크: https://github.com/brython-dev/brython
-
작은 람다 함수와 피보나치 꼬리 재귀 함수 시도
- 둘 다 성공적으로 작동하여 인상적임
- Python 인터프리터를 재구현할 때 종종 오류가 발생하는데 이번에는 잘 작동함