WallpaperMachine
당신이 사랑하는 배경화면, 맥에서 새롭게 만나보세요
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗An interactive, web-based family tree (Shezhire) visualization tool built with Astro and Preact.
This project provides a dynamic and responsive visualization of family lineages, specifically designed for Kazakh Shezhire but extensible to any family tree structure. It features a dual-language interface (English and Kazakh) and an interactive tree canvas.
src/utils/layout.js)scripts/compile.js)/family-tree/#zharzhan-serik), and the back button returns to previously viewed people./
├── src/
│ ├── components/ # Preact components (TreeCanvas, DetailPanel, etc.)
│ ├── data/ # JSON data source (family.json)
│ ├── locales/ # Translation dictionaries (en.json, kk.json)
│ ├── pages/ # Astro pages (entry point)
│ ├── utils/ # i18n, relationship resolution (relations.js), layout (layout.js)
│ └── styles/ # Global CSS
├── scripts/
│ ├── compile.js # Script for compiling family.txt to family.json
├── family.txt # Indented family tree text representation (source of truth)
└── astro.config.mjs # Astro configuration (base path, integrations)
>=24.0.0 (as specified in package.json)npm install
| Command | Action |
|---|---|
npm run dev | Starts local dev server at localhost:4321/family-tree/ (auto-compiles family.txt) |
npm run build | Builds the production site to ./dist/ (auto-compiles family.txt) |
npm run preview | Previews the production build locally |
npm test | Runs the test suite |
node scripts/generate-icons.js | Regenerates the favicon and app icons in public/ from the vector mark defined in the script |
The family tree data is stored in src/data/family.json. Each member is an object with the following potential fields:
id: Unique identifier (readable slug).name: First name.lastName: Last name.fatherId: ID of the father.motherId: ID of the mother.spouseOf: ID of the spouse.gender: male or female.birthday: YYYY-MM-DD.notes: Additional biographical details.To edit the family tree data:
node scripts/compile.js
(Note: npm run dev and npm run build automatically compile family.txt as well)The compiler fails with a list of problems if the data has duplicate ids, references to ids that don't exist, invalid gender/birthday values, or ancestry cycles.
A child's motherId is filled in automatically only when the father has exactly one wife. With several wives, set motherId: explicitly on each child.
The project is configured for deployment to GitHub Pages at https://jarjan.github.io/family-tree/. The deployment workflow is automated via GitHub Actions (.github/workflows/deploy.yml).