TutorLoom
기업·대학·교육기관을 위한 학습 플랫폼, 무료 오픈소스이며 엔터프라이즈 버전 제공
오프라인에서도 사용 가능한 안드로이드 FSL 연습 앱, 손동작을 촬영해 교정 여부를 확인합니다
A free, offline-capable Android FSL practice app: learn a sign, perform it in front of your camera, and get Correct / Needs correction / Recapture feedback. 130 signs, 15 modules.
교육HTML · JavaScriptGitHub @fpaulpalis온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A static, one-page marketing site for the FSLAMES Android app. Plain HTML +
Tailwind CSS v4 (compiled at build time) + a few lines of vanilla JS. It lives
in website/ and does not touch the Flutter app.
cd website
npm install
npm run build # compiles CSS + copies index.html and public/ into dist/
npm run dev # serves dist/ (default: http://localhost:3000)
The download buttons point at downloads/fslames-v2.0.0.apk. To test the real
APK locally, copy it in (the folder is git-ignored):
copy ..\fslames-mobile-app\build\app\outputs\flutter-apk\fslames-v2.0.0-20261023.apk downloads\fslames-v2.0.0.apk
public/config.js is the single place the download destination lives:
window.FSLAMES_APK = {
url: "https://github.com/fpaulpalis/fslames-app/releases", // <- redirect target
version: "2.0.0",
size: "126 MB",
updated: "October 2026",
requires: "Android 10+",
};
Every "Download APK" button (header, hero, download section, footer) reads from
this object. If url is left empty, the buttons flip to a harmless
"APK coming soon" state instead of a broken link.
Before deploying: the APK is ~126 MB, so it cannot be committed to GitHub
(100 MB push limit) or served from most static hosts. Recommended: upload
build/app/outputs/flutter-apk/fslames-v2.0.0-20261023.apk as a GitHub
Release asset, then paste its download URL into config.js.
*.apk and node_modules are ignored).website/. The bundled website/vercel.json sets:
npm installnpm run builddist/ and refreshes
work (static pages; cleanUrls also serves /privacy and /terms).public/config.js and redeploy.website/
├── index.html # the landing page
├── how-to-play.html # Quick Start Guide: Practice
├── privacy.html # Privacy Policy (text from lib/features/auth/policy_texts.dart)
├── terms.html # Terms and Conditions (same source)
├── package.json # build tooling (Tailwind CSS v4)
├── vercel.json # Vercel build/output settings
├── src/
│ ├── styles.css # Tailwind theme + bespoke styles (colors from the app)
│ └── main.js # nav toggle, reveal-on-scroll, APK config wiring
├── scripts/copy-assets.mjs
├── public/
│ ├── config.js # APK download configuration (edit before deploy)
│ └── img/ # logo, Learn-scene background, frog mascot, app mockups
└── downloads/ # local APK copy (git-ignored)
Optional QA: node qa/qa.mjs drives a headless Chrome over CDP to check
overflow and capture screenshots at 390 / 768 / 1280 px (--full for
full-page captures).
lib/core/theme/app_colors.dart,
lib/widgets/learning_path.dart, lib/widgets/frog_mascot.dart).docs/screenshot_plate_plan.md),
drop PNG/JPG replacements into public/img/ and swap the <img src>s in
index.html.