Apptron 0.7: 오프라인 사이트, 콘솔 임베드, 그리고 그 외 다양한 기능
Source: Dev.to
Apptron은 이제 모든 프로젝트의 중심이 되었습니다. 모든 것이 여기서 결합되고 자체적으로 새로운 종류의 소프트웨어 플랫폼이 됩니다. 가까이서 따라오지 않았다면 놓쳤을 수도 있습니다. 아래는 최신 릴리스에 대한 릴리즈 노트입니다.
이번이 가장 큰 릴리스입니다!
많은 버그 수정 및 UX 개선과 함께 몇 가지 새로운 작은 기능이 추가되었습니다.
하이라이트
/web/dl마운트 – 파일을 쓰면 브라우저 다운로드를 트리거하는 새로운 쓰기 전용 파일 시스템.open명령 –/project외부의 파일을 편집합니다. 디렉터리에서open을 사용하면 파일 탐색기에 새로운 루트로 추가됩니다.- 임베드 스니펫 개선 – 이제 Editor Mode(클래식 편집기 UI, 이제 Apptron 상단 바가 없음)와 Console Mode(터미널 전용 임베드, 인터랙티브 CLI 플레이그라운드나 웹 페이지에서 임의의 Wasm/Linux를 실행하기에 완벽) 중 선택할 수 있습니다.
환경 사용자 정의
프로젝트에
.apptron/envrc(또는 간단히.envrc) 파일을 두어 프롬프트가 표시되기 직전에 명령을 실행합니다 – 프로젝트 수준의.profile이라고 생각하면 됩니다.기본 “Welcome to Apptron” 배너는
.envrc가 실행되기 전에 여전히 표시되지만,.banner또는.apptron/banner파일을 추가하여 교체할 수 있습니다. 빈 파일을 두면 배너가 완전히 비활성화됩니다.이제 두 개의 유용한 환경 변수가 제공됩니다:
Variable Values Description ENV_MODEedit/console임베드가 편집기 모드인지 콘솔 모드인지 나타냅니다. ENV_EMBED(set) 환경이 임베드로 로드될 때 존재합니다.
오프라인 지원 정적 사이트
- 정적 사이트는
/public마운트에서 제공됩니다. /public/index.html파일이 있다면, 이제 동적 서비스 워커를 주입하여/public내 모든 자산을 백그라운드에서 캐시합니다. 홈 페이지를 한 번 방문하면 전체 사이트를 오프라인에서도 접근할 수 있습니다.- 참고: 현재 “refresh‑ahead” 전략은 변경 사항을 확인하려면 두 번 새로고침해야 합니다. 사용해 보시고 문제점이 있으면 알려 주세요.
Demo video: (link omitted in original text)
성능 및 빌드 개선
- 네트워크 게이트웨이 업그레이드 – Cloudflare Containers standard‑4 로 이전하여 4× 처리량 향상을 제공 (파일 다운로드 및 패키지 설치 속도 향상).
- Copy‑on‑write 파일시스템 통합 –
envbuild를 통한 환경 변경이 이제 기본 시스템 위에 레이어링됩니다. 이를 통해:- 사용자 정의 환경에 대한 자동 기본 시스템 업데이트.
- 대형 빌드가 2× 빠르게 진행됩니다.
새로운 기능 및 개선 사항
| Feature | Description |
|---|---|
add new project welcome readme (#221) | 새 프로젝트를 위한 새로운 README. |
add default service worker to cache public site assets for offline | 정적 사이트에 대한 오프라인 지원을 활성화합니다. |
add custom 404 support to public sites | /public에 대한 맞춤 404 페이지. |
add Embed Mode option to get new console embed | 편집기와 콘솔 임베드 중 선택. |
add open command for non‑project files (#230) | /project 외부 파일 편집. |
add support for .apptron files as dotfiles in project root | .apptron/*를 구성 파일로 인식합니다. |
add .apptron/banner or .banner to customise shell banner | 기본 환영 배너를 재정의합니다. |
add support for ?topbar=0 to hide topbar | 임베드에서 Apptron 상단 바를 숨깁니다. |
add sponsor dialog from account dropdown (#247, #225) | 스폰서십 정보를 빠르게 접근. |
add feedback form dialog from topbar (#247, #224) | 피드백 제출을 쉽게. |
add bundle caching that clears on login (#163) | 번들 로드 시간을 개선합니다. |
add publish helper command (#227) | 퍼블리시 워크플로우를 간소화합니다. |
add loopback network device | VM에서 루프백 네트워킹을 활성화합니다. |
add /web/dl filesystem for triggering downloads | 다운로드 트리거 파일을 위한 쓰기 전용 마운트. |
add ENV_MODE environment variable (edit or console) | 임베드 모드를 감지합니다. |
add kernel modules for audio support in VM | VM 내 오디오 기능. |
add confirmation dialog on project delete (#262, #267) | 실수로 삭제되는 것을 방지합니다. |
add toast notification on project delete (#238) | 삭제 후 시각적 피드백. |
add loading indicators to buttons (#244, #203, #234, #202) | 비동기 작업 중 UX 향상. |
add help text in publish tab of share dialog (#195, #249) | 퍼블리시 가이드. |
add improved copy button in share dialog (#242) | 링크 공유를 더 쉽게. |
use copy‑on‑write for custom environments (#217) – 2× envbuild speedup, cuts seconds from page load. | 커스텀 환경에 copy‑on‑write 사용 – envbuild 속도 2배, 페이지 로드 시간 수 초 단축. |
improve network throughput (#159) – 4× speedup. | 네트워크 처리량 개선 – 4배 속도 향상. |
change starting directory to /project | 일관된 기본 위치. |
refactor share dialog architecture (#245, #222) | 더 깔끔한 코드베이스. |
Bug Fixes
- 프로젝트 파일 잘림/손상 수정 (#232, #157).
- 최초 게시 실패 해결 (#231).
- 프로젝트 루트 게시 불가 문제 수정 (#244, #233).
- 깨진 마크다운 미리보기 수정 (#229).
- 작은 창에서 로그인 컴포넌트가 화면 밖으로 나가는 문제 수정 (#269, #268).
- 공유 대화창 UI 깨짐 수정 (#266).
- 드롭다운 닫힘 동작 오류 수정 (#240, #214).
- Apptron 로고 링크 오류 수정 (#228).
- 짧은 프로젝트 이름 제한 수정 (#208).
- 세션 만료 시 로그인 실패 수정 (#210, #243).
- 프로젝트 설정 변경 후 상태 손상 수정 (#167).
- 계정 대화창에서 위험한 사용자명 변경 문제 수정 (#239, #246).
전체 변경 로그
Try It Out!
평소와 같이, 새로운 릴리스를 테스트하고 발견한 문제를 보고해 주시면 감사하겠습니다. GitHub Sponsors에게 큰 감사를 드립니다—그들은 이제 우리의 유일한 자금원입니다. Apptron이 지속적으로 성장할 수 있도록 후원을 고려해 주세요!