A modern, multilingual, and accessible website template designed specifically for local government units (LGUs) in the Philippines. Built with React, TypeScript, and Tailwind CSS.
- 🌐 Multilingual Support: English, Filipino, Cebuano, and other Philippine languages
- 📱 Responsive Design: Mobile-first approach with modern UI/UX
- ♿ Accessibility: WCAG 2.1 compliant design
- 📝 Content Management: YAML-based content system for easy updates
- 🎨 Customizable: Easy theming and branding customization
- ⚡ Fast Performance: Built with Vite for optimal loading speeds
- 🔍 SEO Optimized: Built-in SEO with react-helmet, meta tags, and Open Graph support
- Node.js 18+
- npm or yarn
- Git
-
Fork the repository
- Visit https://github.com/iyanski/betterlocalgov
- Click the "Fork" button in the top right
- This creates your own copy of the repository
-
Clone your forked repository
git clone https://github.com/YOUR-USERNAME/betterlocalgov.git cd betterlocalgovReplace
YOUR-USERNAMEwith your GitHub username. -
Add upstream remote (to get updates from the original repo)
git remote add upstream https://github.com/iyanski/betterlocalgov.git
-
Install dependencies
npm install # or yarn install -
Run the setup script
npm run setup
This will guide you through configuring your government's information.
-
Start development server
npm run dev # or yarn dev -
Open your browser Navigate to
http://localhost:5173
- STARTER-KIT-README.md - Complete setup and customization guide
- CONTENT-GUIDE.md - Content writing and contribution guidelines
- CONTENT-MANAGEMENT.md - Guide for non-technical users to edit and manage website content
- DEPLOYMENT-GUIDE.md - Deployment instructions for Vercel and other platforms
- STARTER-KIT-SUMMARY.md - Audit results and implementation summary
- CHANGELOG.md - Version history and release notes
- Local Government Units (Cities, Municipalities, Provinces)
- Government IT Departments looking for modern web solutions
- Web Development Agencies serving government clients
- Civic Technology Organizations building government tools
- Government Officials wanting professional online presence
-
Fork & Clone (5 minutes)
- Fork the repository on GitHub (click "Fork" at https://github.com/iyanski/betterlocalgov)
- Clone your fork:
git clone https://github.com/YOUR-USERNAME/betterlocalgov.git cd betterlocalgov git remote add upstream https://github.com/iyanski/betterlocalgov.git npm installReplace
YOUR-USERNAMEwith your GitHub username. -
Configure Your Government (15 minutes)
npm run setup # Interactive setup guides you through configuration -
Customize Content (2-4 hours)
- Edit service information in
content/services/ - Add government department info in
content/government/ - Update contact information and branding
- Edit service information in
-
Deploy to Production (15 minutes)
- Connect to Vercel for free hosting
- Set up custom domain (optional)
- Your website is live!
- Multilingual: English, Filipino, Cebuano, and other local languages
- Local Context: Designed for Philippine government structure
- Cultural Sensitivity: Respects local customs and practices
- Accessibility: WCAG 2.1 compliant for all citizens
- YAML Content Management: Easy content updates without coding
- Visual Setup: Interactive configuration process
- Clear Documentation: Step-by-step guides for everything
- Template System: Pre-built content templates
- Mobile-First: Works perfectly on all devices
- Fast Loading: Optimized for performance
- SEO Ready: Built-in search engine optimization
- Secure: Modern security best practices
npm run dev- Start development servernpm run build- Build for productionnpm run preview- Preview production buildnpm run lint- Run ESLintnpm run lint:fix- Fix ESLint issuesnpm run format- Format code with Prettiernpm run setup- Run setup script for new installationsnpm run convert-yaml- Convert YAML to JSONnpm run dev:yaml- Convert YAML and start dev server
content/
├── government/ # Government section markdown & YAML
│ └── departments/ # Department pages (executive, legislative, etc.)
└── services/ # Services section markdown & YAML
src/
├── components/ # Reusable UI components
│ ├── home/ # Home page components
│ ├── layout/ # Layout components (Navbar, Footer)
│ └── ui/ # Basic UI components
├── data/ # YAML configuration (services.yaml, government.yaml)
├── i18n/ # Internationalization
├── lib/ # Utility functions (markdownLoader, yamlLoader)
├── pages/ # Page components (Home, Services, Government, Document)
└── types/ # TypeScript type definitions
- iyanski — Project creator and maintainer
- Nicu Listana — Contributor
We welcome contributions from everyone! Whether you're a developer, government official, or community member, there are many ways to help improve this project.
No coding experience required! You can contribute valuable content and improvements using GitHub's web interface.
- Create a GitHub account (free at github.com)
- Navigate to the repository in your web browser
- Use our detailed guide: CONTENT-MANAGEMENT.md - Complete step-by-step instructions for editing content without any technical knowledge
- 📝 Content Updates: Fix outdated information, add new services, improve descriptions
- 🌐 Translations: Help translate content to Filipino, Cebuano, or other local languages
- 📋 Service Information: Add details about government services, requirements, and processes
- 🔍 Content Review: Check for accuracy, clarity, and completeness
- 💡 Suggestions: Propose new features or improvements
-
Find content to edit:
- Go to
content/services/for service pages orcontent/government/for department pages - Choose a category (health, education, business, departments, etc.)
- Click on any
.mdfile to edit
- Go to
-
Make your changes:
- Click the pencil icon (✏️) to edit
- Update the content using simple text formatting
- Add new information, fix errors, or improve clarity
-
Save your changes:
- Write a brief description of what you changed
- Click "Commit changes"
- Your changes will be reviewed and merged
- Service Descriptions: How to apply for permits, scholarships, health services
- Requirements: Documents needed, eligibility criteria, deadlines
- Contact Information: Office locations, phone numbers, hours
- Process Steps: Step-by-step instructions for government services
- Translations: Help make content available in local languages
- Fork the repository on GitHub (click "Fork" at https://github.com/iyanski/betterlocalgov)
- Clone your fork:
git clone https://github.com/YOUR-USERNAME/betterlocalgov.git - Add upstream remote:
git remote add upstream https://github.com/iyanski/betterlocalgov.git - Create a content branch:
git checkout -b content/update-health-services - Edit content files in
content/ - Test your changes:
npm run dev - Submit a pull request to the original repository
- Fork the repository on GitHub (click "Fork" at https://github.com/iyanski/betterlocalgov)
- Clone your fork:
git clone https://github.com/YOUR-USERNAME/betterlocalgov.git - Add upstream remote:
git remote add upstream https://github.com/iyanski/betterlocalgov.git - Create a feature branch:
git checkout -b feature/new-component - Make your changes
- Run tests:
npm run lint && npm run build - Submit a pull request to the original repository
To get the latest changes from the original repository:
# Fetch the latest changes from upstream
git fetch upstream
# Switch to your main branch
git checkout main
# Merge upstream changes into your main branch
git merge upstream/main
# Push updates to your fork on GitHub
git push origin mainBest Practice: Always sync your fork before creating a new branch for contributions.
- Accuracy First: Ensure all information is current and correct
- Clear Language: Write for the general public, avoid jargon
- Complete Information: Include all necessary details (requirements, steps, contacts)
- Local Context: Consider the specific needs of your community
- Accessibility: Use clear headings, simple language, and logical structure
- Follow existing code style and patterns
- Test your changes thoroughly
- Update documentation when needed
- Ensure mobile responsiveness
- Maintain accessibility standards
- Content Accuracy: Update outdated information, fix errors
- Localization: Translate content to Filipino, Cebuano, and other Philippine languages
- Service Coverage: Add missing government services and programs
- User Experience: Improve clarity and ease of use
- Accessibility: Ensure content is accessible to all citizens
- For Content Questions: Check CONTENT-MANAGEMENT.md
- For Technical Issues: Open an issue on GitHub
- For General Questions: Contact the project maintainers
All contributors are recognized in our project documentation. Your contributions help make government services more accessible to all citizens!
This project is licensed under the Creative Commons Zero (CC0) License - see the LICENSE file for details.
CC0 License Benefits:
- Public Domain: No restrictions on use, modification, or distribution
- Government Friendly: Perfect for public sector projects
- Maximum Reusability: Anyone can use, modify, and distribute freely
- No Attribution Required: Though attribution is appreciated
- Built with React
- Styled with Tailwind CSS v4
- UI components by @bettergov/kapwa
- Icons by Lucide React
- Content management with YAML
- Internationalization with i18next
Made with ❤️ for Philippine Local Government Units