Easy-to-manage touch screens
무료 오픈소스 터치스크린으로 USB 설정 가이드, 드래그‑드롭 편집기, 로컬 제어를 제공하며 Home Assistant용으로 제작되었습니다
evo.polaris는 무료 접근 가능한 야간 하늘 안내·극점 정렬 도구로 한 번 탭으로 북극성·ISS·행성·별자리·은하를 찾는다
Free, accessible night-sky guide and polar alignment: one tap finds Polaris, the ISS, the planets, constellations and galaxies. Made for every astronomer, including astronomers with physical disabilit
라이프스타일JavaScript · SwiftGitHub @evomedia-net온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기The Google Play and App Store builds of evo.polaris: the released web app, bundled offline in a Capacitor shell. A night-sky guide and polar alignment for every astronomer, including those with disabilities.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
The Google Play and Apple App Store builds of
evo.polaris: a free night-sky
guide and polar-alignment app, made for every astronomer, including
astronomers with physical disabilities, limited fine motor control or low
vision.
This repo holds no app code of its own. It takes one released version of
polaris, the same files polaris.evomedia.net
serves, and bundles it inside a Capacitor shell,
so the store app works fully offline from the first launch.README 전문 보기 ↗The Google Play and Apple App Store builds of evo.polaris: a free night-sky guide and polar-alignment app, made for every astronomer, including astronomers with physical disabilities, limited fine motor control or low vision.
This repo holds no app code of its own. It takes one released version of polaris, the same files polaris.evomedia.net serves, and bundles it inside a Capacitor shell, so the store app works fully offline from the first launch.
npm ci
npm run sync # fetch the pinned polaris, set the store numbers, cap sync
npm run sync is three steps, which can also be run one at a time:
npm run fetch-site downloads the pinned polaris release into www/,
npm run store-version writes the store version numbers into both projects,
and npx cap sync copies www/ into the Android and iOS projects.
fetch-site downloads the release zip named by "polaris": { "version" } in
package.json, checks it against the release's own .sha256, then checks
every file inside against the zip's CHECKSUMS.txt. Nothing unchecked
reaches the app. It changes two things in the page, both described in
scripts/fetch-site.mjs:
native-shim.js in front of polaris's own script;viewport-fit=cover, so the page stays clear of the phone's
status and navigation bars, which sit on black.To ship a newer polaris, change that version, run npm run sync, and build.
Neither store takes polaris's five-part version, so
scripts/store-version.mjs maps it, and both stores refuse an upload whose
number is not higher than the last:
| Store | Field | From polaris 0.0.1.0.69 |
|---|---|---|
| Google Play | versionName | 0.0.1.0.69 |
| Google Play | versionCode | 1000069 |
| App Store | version (MARKETING_VERSION) | 0.1.69 |
| App Store | build (CURRENT_PROJECT_VERSION) | 1000069 |
The order of polaris versions is kept while rc, beta and alpha stay under 10 and build under 100000; past that the script stops rather than hand a store a number that goes backwards. The numbers come from polaris, so each store upload carries a new polaris release.
src/native-shim.js, and only where a phone's web view falls short:
Permissions are only the ones polaris uses:
On iOS, the motion sensors that turn the sky view also ask first.
Needs JDK 21 and the Android SDK (platform 36).
cd android
./gradlew assembleDebug # app/build/outputs/apk/debug/app-debug.apk
./gradlew bundleRelease # app/build/outputs/bundle/release/app-release.aab
The app id is net.evomedia.polaris.
Release signing. Google Play takes a bundle signed with the app's
upload key, and with Play App Signing turned on (it is, for any new app)
Google holds the key that signs what phones get, so a lost upload key can be
reset. The upload key never enters this repo. POLARIS_SIGNING names a
properties file beside it on the machine that builds releases:
storeFile=<path to the upload keystore>
storePassword=...
keyAlias=polaris-upload
keyPassword=...
With POLARIS_SIGNING unset, bundleRelease still builds, unsigned, and
Play will refuse it -- on purpose, rather than a build signed with whatever
key was lying around. The keystore and its properties file are backed up
together.
An iOS app can only be built on a Mac, so this repo builds it on GitHub's macOS runners. The project uses Swift Package Manager, not CocoaPods.
.github/workflows/ios.yml builds for the simulator, unsigned, on every
push: proof the project compiles..github/workflows/ios-release.yml, run by hand, archives a signed build
and uploads it to TestFlight. Signing is Xcode's cloud-managed signing,
driven by an App Store Connect API key, so no certificate or provisioning
profile is exported or stored. It needs four repo secrets, named at the
top of the workflow, and stops naming any that is missing.store/ holds everything a store listing asks for:
listing.md: the name, descriptions, keywords, categories and URLs for
both stores, each under its character limit;privacy-answers.md: Google Play's Data safety form and Apple's App
Privacy labels, answered from the privacy policy at
https://polaris.evomedia.net/privacy.html;app-review-notes.md: the notes for App Review, and the case under
Apple's minimum-functionality guideline;play/ and ios/: the screenshots, the Play icon and feature graphic.scripts/make-store-images.mjs draws the images and the native icons and
launch screens from a running polaris with headless Chrome, so a new polaris
release is one re-run from new store images.
npm test
The tests cover:
MIT. See LICENSE. polaris's bundled data and pictures keep their own terms, listed in the polaris README.