Skip to content

hammercode-dev/yayasan-peduli-ilmu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Yayasan Peduli Ilmu

A modern donation platform for Yayasan Peduli Ilmu, designed to support multilingual communities, simplify fundraising, and ensure transparency for educational initiatives.


🚀 Getting Started

npm install       # Install dependencies
npm dev           # Start development server
npm build         # Production build
npm start         # Start production server
npm test          # Run unit/integration tests
npm format        # Format codebase with Prettier

Make sure to create .env.example into .env and update your Supabase keys.


🧩 Tech Stack


📚 Developer Docs

We maintain internal documentation in the /docs folder:

  • next-intl.md — How to use next-intl across routes and components
  • supabase.md — Supabase schemas, auth rules, and storage usage
  • helpers.md - globally reusable utility functions and custom hooks

Docs help onboard future devs and maintain consistency across the team.


🧪 Testing

npm run test          # Run all tests once
npm run test:watch    # Watch mode

We use:

  • Jest: Test runner
  • @testing-library/react: Component + DOM testing
  • Mocking: For next-intl, Supabase, router, etc.

Tests are colocated next to their source files as *.test.tsx.


📦 Environment Variables

# .env.example
NEXT_PUBLIC_SUPABASE_URL=https://<your-project>.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-key

Use .env.local for development and keep your secrets safe.


✅ Commit Convention

We follow Conventional Commits for consistent changelogs and CI/CD pipelines.

Example:

feat(donation): redesign donation card layout and improve logic
fix(timeline): correct date formatting issue in program timeline

Setup: Husky + Commitlint


👥 Contributing

  • Use feature folders and follow component separation
  • Write tests for logic-heavy components or hooks
  • Update /docs if adding/removing architecture-related decisions

📝 License

MIT License © Yayasan Peduli Ilmu 2025


Built with ❤️ by a small team of dedicated volunteers. Contributions and feedback welcome!

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •