Fujimod
브라우저에서 카메라 펌웨어를 시험하고 Fujimod SD 부팅 파일을 만든다
CARE 프로젝트가 키프로스 유기견을 구조·보호·입양, 입양견과 구조 이야기를 확인하고 동물 복지에 동참
CARE Project rescues, fosters, and rehomes stray dogs across Cyprus. Meet adoptable dogs, read rescue stories, and help us support animal welfare.
라이프스타일TypeScript · CSSGitHub @careproject-cy온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Open-source dog adoption website for animal rescues, powering careproject.cy. Next.js 16, Payload CMS 3, Postgres and VaneUI. Fork it for your rescue.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A 100% volunteer-run dog rescue platform helping stray and shelter-bound dogs across Cyprus find loving homes.
careproject.cy | UANA Foundation
CARE Project is the adoption platform for UANA Foundation, a registered nonprofit in Cyprus. We rescue stray dogs, cover their veterinary care, rehabilitate and socialize them, and coordinate adoptions locally and internationally to the UK, Germany, and the Netherlands.
100% volunteer. No paid staff. Every euro goes to the animals.
Every rescue organization deserves a modern adoption platform. Most operate through social media DMs and spreadsheets. We built this site for CARE Project and are open-sourcing it so any animal rescue can fork it, add their animals, and deploy for free.
/admin)git clone https://github.com/careproject-cy/platform.git
cd platform
npm install
Copy .env.example to .env and fill in a Postgres connection string and a Payload secret. Without
S3_BUCKET set, image uploads fall back to local disk, which is fine for development.
cp .env.example .env
npm run migrate
Running your own instance needs a Postgres database (Neon's free tier is enough) and, for uploaded
images, an S3 bucket. Set S3_PUBLIC_BASE_URL to the public URL your images are served from (e.g. a
CloudFront or bucket URL) and next/image will allow that host automatically. DATABASE_URL is
required at build time, not just at runtime, because pages are prerendered.
npm run dev
Open http://localhost:3000 in your browser. The admin panel is at /admin - the first visit prompts you to create an admin account.
Dog profiles and blog posts are managed in the CMS at /admin and publish without a deploy. Their body
text is Markdown, rendered through Markdoc. Static pages remain Markdown files in data/pages/.
The legacy Markdown in data/dogs/ and data/blog/ is kept as the migration source; import it once with:
npm run import-content
Builds do not run database migrations. Schema changes are applied deliberately, so that a preview build of an unmerged branch can never alter the production database and a rolled-back deploy never leaves an un-rolled-back schema behind.
When a change adds or alters a collection field:
npm run migrate:create <name> # generate the migration, commit it
npm run migrate # apply it locally
Then, before merging to main, apply it to production with DATABASE_URL pointing at the production
database, and confirm with npm run migrate:status that every migration reads Ran: Yes. Deploy after
that, never before - the new code expects the new schema.
Migrations read .env (not .env.local), because that is what the Payload CLI loads.
.github/workflows/db-backup.yml runs pg_dump daily (03:00 UTC) and uploads a gzipped dump to S3,
keeping 30 days. A dump contains password hashes and all content, so it must not go in the media
bucket - that bucket is served publicly through CloudFront. Use a separate private bucket:
s3:PutObject, s3:GetObject, s3:DeleteObject, s3:ListBucket on
that bucket only.BACKUP_DATABASE_URL (Neon's unpooled connection string), BACKUP_S3_BUCKET, BACKUP_S3_REGION,
BACKUP_S3_ACCESS_KEY_ID, BACKUP_S3_SECRET_ACCESS_KEY.Run it on demand from the Actions tab ("Run workflow"). Restore with
gunzip -c dump.sql.gz | psql "$DATABASE_URL" against a fresh database.
npm run build
platform/
app/
(frontend)/ # The public website
blog/ # Blog pages
dogs/ # Dog profile pages
more/ # Static pages (adopt, foster, donate, etc.)
(payload)/ # CMS admin panel and REST API
components/ # React components (header, footer, dog cards, etc.)
data/ # Constants and data fetching utilities
collections/ # Payload collections (dogs, posts, media, users)
payload.config.ts # CMS configuration
data/
dogs/ # Legacy dog Markdown, kept as the migration source
blog/ # Legacy blog Markdown, kept as the migration source
pages/ # Static page content as Markdown
public/ # Static assets (logos, images)
lib/ # Content import and generation scripts
CARE Project operates under UANA Foundation, a registered Cyprus nonprofit (HE 442538) that supports animal rescuers across the island. UANA also runs:
Contact: [email protected]
We welcome contributions! Whether you're a developer, designer, or animal welfare advocate:
git checkout -b feature/your-feature)npm run lint && npm run typecheck)git push origin feature/your-feature)