CEKA (Civic Education Kenya App) is a community-led open-source platform built to bridge the civic knowledge gap and empower Kenyan citizens with accessible, accurate, and engaging civic education.
CEKA is a civic tech project built for the people, by the people. In a democracy, informed citizens are empowered citizens. We aim to:
- Bridge Knowledge Gaps - Make civic education accessible, engaging, and easy to understand
- Promote Transparency - Provide clear, verified information about governance and civic processes
- Inspire Action - Connect citizens with tools and opportunities for meaningful civic participation
- Foster Community - Create spaces for constructive civic dialogue and collaboration
- Enable Global Impact - Serve as a template for civic education initiatives worldwide
- π Legislative Tracker - Follow bills, laws, and legislative processes with AI-powered summaries
- π Resource Hub - Access civic education materials, articles, and interactive content
- π€ Community Portal - Engage in discussions and connect with like-minded citizens
- π Interactive Learning - Take quizzes and track your civic knowledge progress
- π Multilingual Support - Available in English and Swahili
- π± Offline Access - Download resources for use without internet connectivity
- π Anonymous Contributions - Submit legislative insights and resources for community benefit
git clone https://github.com/CivicEdKenyaApp/CEKA.git
cd CEKAnpm installCopy the example environment file and add your configuration:
cp .env.example .envUpdate .env with your credentials (available from your Supabase dashboard):
# Supabase Configuration
VITE_SUPABASE_URL=your_supabase_project_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_keyπ Security Note: Never commit your
.envfile. It's already included in.gitignore.
npm run devYour app should be running at http://localhost:5173
npm run build- React 18 - Modern UI library with hooks and concurrent features
- TypeScript - Type-safe JavaScript development
- Tailwind CSS - Utility-first CSS framework
- Vite - Fast build tool and development server
- Framer Motion - Smooth animations and interactions
- GSAP - High-performance animations
- Supabase - Authentication, PostgreSQL database, and real-time features
- OpenAI API - Content summarization and categorization
We welcome all collaborators β developers, designers, educators, civic advocates, and citizens! CEKA thrives on community contributions.
-
Fork the repository
git fork https://github.com/CivicEdKenyaApp/CEKA.git
-
Create a feature branch
git checkout -b feature/your-feature-name
-
Make your changes
- Follow our coding standards
- Write clear commit messages
- Add tests for new features
-
Test your changes
npm run test -
Submit a pull request
- Provide a clear description of your changes
- Reference any related issues
- Include screenshots for UI changes
- π§ Development - Frontend components, backend APIs, database optimization
- π¨ Design - UI/UX improvements, accessibility enhancements
- π Content - Civic education materials, translations (Swahili, other Kenyan languages)
- π§ͺ Testing - Manual testing, automated test writing
- π Documentation - API docs, user guides, contribution guidelines
CEKA is designed for easy deployment across multiple platforms:
- Supabase + Auth
CEKA takes user privacy and security seriously:
- π Secure Authentication - Supabase Auth for identity management
- π‘οΈ Data Protection - User data is encrypted and stored securely
- π€ Anonymous Contributions - Users can contribute without revealing identity
- π Privacy-First Analytics - No personal data tracking or sharing
For security issues, please email: [email protected]
- π¬ Discussions: GitHub Discussions
- π Bug Reports: GitHub Issues
- π§ Email: [email protected]
- π± Instagram: @civiceducationke
- π¦ Twitter: @CEKAApp
CEKA is community-supported. Your support helps us maintain infrastructure and create content.
This project is open source and available under the MIT License.
What this means:
- β Commercial Use - Use CEKA in commercial projects
- β Modification - Modify and adapt the code
- β Distribution - Share and redistribute freely
- β Private Use - Use for private/internal projects
- β Patent Grant - Protection from patent claims
Requirements:
- π License Notice - Include the MIT license in distributions
- π Copyright Notice - Credit the original authors
Educational content is licensed under Creative Commons CC BY-SA 4.0
"CEKA" and the CEKA logo are trademarks of the CEKA Project. See TRADEMARK.md for usage guidelines.
- Basic legislative tracker
- Resource hub with offline access
- User authentication
- Mobile-responsive design
- AI-powered content summarization
- Anonymous contribution processing
- Personalized content recommendations
- Automated content categorization
- Discussion forums
- Petition and campaign tools
- Volunteer opportunity matching
- Event management system
- Multi-country adaptation
- Advanced analytics dashboard
- Government partnership integrations
- Educational institution partnerships
See our detailed roadmap for specific milestones and progress.
CEKA exists thanks to the contributions of:
- π₯ Contributors - Developers, designers, and civic advocates who build CEKA
- ποΈ Civic Organizations - Partners who provide expertise and guidance
- π Educational Institutions - Schools and universities that use and improve CEKA
- π° Supporters - Individuals and organizations that fund development
- π°πͺ Kenyan Citizens - The community that CEKA serves and learns from
- Open source communities that inspire civic technology
- Democracy and transparency advocates worldwide
- The next generation of Kenyan civic leaders
Since launch, CEKA has:
- π 40,000 Active Users across Kenya
- π 00's of Civic Resources in our database
- ποΈ 15 Bills Tracked in our legislative tracker
- π€ Dozens of Community Contributions from citizens
- π 4 Countries exploring CEKA adaptation
Updated monthly - see impact dashboard for real-time metrics.
Built with β€οΈ for Kenya and democracy worldwide
π Star this repo | π΄ Fork for your country | π§ Get in touch
"The best way to predict the future is to create it." - Peter Drucker