The Django Rwanda Community website is a modern, full-featured platform built to connect, educate, and empower African developers passionate about Django and web development. It serves as the central hub for the Django Rwanda community, featuring workshops, events, open-source projects, and resources for entrepreneurs.
Django Rwanda Community is dedicated to fostering a vibrant, inclusive ecosystem of developers across Africa. We believe in the power of community, collaboration, and open-source innovation to solve local challenges and create global opportunities.
- 500+ Community Members
- 50+ Events Hosted
- 20+ Open Source Projects
- Modern hero section with animated backgrounds
- Community mission and values showcase
- Featured workshops carousel
- Upcoming events listing
- Open-source projects showcase
- Entrepreneur resources section
- Join Us - Membership registration with benefits overview
- Code of Conduct - Community guidelines and standards
- Contribute - Guidelines for contributing to the community
- Sponsorship - Partnership opportunities for organizations
- Comprehensive Django workshops (Beginner to Advanced)
- Workshop catalog with filtering by skill level
- Detailed workshop pages with curriculum
- Registration system for workshops
Available Workshops:
| Workshop | Level | Duration |
|---|---|---|
| Django Fundamentals | Beginner | 4 weeks |
| Advanced Django Patterns | Intermediate | 6 weeks |
| Building APIs with Django REST | Intermediate | 4 weeks |
| Full-Stack Django & React | Advanced | 8 weeks |
- Monthly meetups in Kigali
- Quarterly bootcamps
- Open Source Contribution Days
- Event details with registration
- Location and attendee information
Featured community projects:
- Django-Africa - Toolkit for localized Django apps for African markets
- Swahili CMS - Content management for African media outlets
- Local Commerce - E-commerce platform for African small businesses
- Startup Toolkit - Essential resources for launching tech startups
- Funding Directory - Investors, grants, and accelerators
- Mentorship Network - Connect with experienced entrepreneurs
- Local Problem Solutions - Ideas for African community challenges
- User registration with interest selection
- Social sign-up (Google, GitHub)
- Secure login system
- Terms of Service and Privacy Policy
- Contact page with form
- Privacy Policy
- Terms of Service
- Sitemap
- Event registration
- Workshop registration
- Next.js 16 - React framework with App Router
- React 19 - UI library with latest features
- TypeScript - Type-safe JavaScript
- Tailwind CSS - Utility-first CSS
- Radix UI - Accessible component primitives
- Lucide React - Beautiful icons
- tailwindcss-animate - Animation utilities
- React Hook Form - Performant form handling
- @hookform/resolvers - Validation resolvers
- cmdk - Command palette
- Embla Carousel - Carousel component
- Recharts - Charting library
- Sonner - Toast notifications
- Vaul - Drawer component
- React Day Picker - Date picker
- date-fns - Date manipulation
- clsx - Class name utility
- tailwind-merge - Merge Tailwind classes
- class-variance-authority - Component variants
- @vercel/analytics - Web analytics
django-rwanda-website/
├── app/ # Next.js App Router pages
│ ├── page.tsx # Homepage
│ ├── layout.tsx # Root layout
│ ├── globals.css # Global styles
│ ├── auth/ # Authentication pages
│ │ ├── login/
│ │ └── signup/
│ ├── community/ # Community section
│ │ ├── page.tsx
│ │ ├── code-of-conduct/
│ │ ├── contribute/
│ │ ├── join/
│ │ └── sponsorship/
│ ├── contact/ # Contact page
│ ├── events/ # Events section
│ │ ├── page.tsx
│ │ └── [id]/ # Dynamic event pages
│ ├── get-started/ # Onboarding page
│ ├── privacy/ # Privacy policy
│ ├── register/ # Registration flows
│ │ ├── events/
│ │ └── workshops/
│ ├── resources/ # Entrepreneur resources
│ │ ├── page.tsx
│ │ ├── funding-directory/
│ │ ├── mentorship/
│ │ ├── problem-solutions/
│ │ └── startup-toolkit/
│ ├── sitemap/ # Sitemap
│ ├── terms/ # Terms of service
│ └── workshops/ # Workshops section
│ ├── page.tsx
│ └── [id]/ # Dynamic workshop pages
├── components/ # React components
│ ├── ui/ # Reusable UI components (50+)
│ ├── header.tsx # Site header
│ ├── footer.tsx # Site footer
│ ├── hero.tsx # Homepage hero
│ ├── community-section.tsx # Community showcase
│ ├── events-section.tsx # Events showcase
│ ├── workshops-section.tsx # Workshops showcase
│ ├── open-source-section.tsx # Open source projects
│ ├── resources-section.tsx # Resources showcase
│ └── theme-provider.tsx # Theme context
├── hooks/ # Custom React hooks
│ ├── use-mobile.ts # Mobile detection
│ └── use-toast.ts # Toast notifications
├── lib/ # Utilities
│ ├── constants.ts # Site content/data
│ └── utils.ts # Helper functions
├── public/ # Static assets
└── styles/ # Additional styles
└── globals.css
- Node.js 18.17 or later
- Yarn (recommended) or npm
-
Clone the repository
git clone https://github.com/djangorwanda/Django-Rwanda-website.git cd Django-Rwanda-website -
Install dependencies
yarn install
-
Run the development server
yarn dev
-
Open your browser
Navigate to http://localhost:3000
| Command | Description |
|---|---|
yarn dev |
Start development server |
yarn build |
Build for production |
yarn start |
Start production server |
yarn lint |
Run ESLint |
The project includes a comprehensive UI component library built with Radix UI primitives and styled with Tailwind CSS:
View all 50+ UI components
- Accordion
- Alert & Alert Dialog
- Aspect Ratio
- Avatar
- Badge
- Breadcrumb
- Button & Button Group
- Calendar
- Card
- Carousel
- Chart
- Checkbox
- Collapsible
- Command (cmdk)
- Context Menu
- Dialog
- Drawer
- Dropdown Menu
- Empty State
- Field
- Form
- Hover Card
- Input & Input Group
- Input OTP
- Item
- Kbd
- Label
- Menubar
- Navigation Menu
- Pagination
- Popover
- Progress
- Radio Group
- Resizable Panels
- Scroll Area
- Select
- Separator
- Sheet
- Sidebar
- Skeleton
- Slider
- Sonner (Toast)
- Spinner
- Switch
- Table
- Tabs
- Textarea
- Toast & Toaster
- Toggle & Toggle Group
- Tooltip
Create a .env.local file in the root directory:
# Analytics (optional)
NEXT_PUBLIC_VERCEL_ANALYTICS_ID=your-analytics-id
# Add other environment variables as neededThe easiest way to deploy is using Vercel:
Build the production bundle:
yarn buildThe output will be in the .next directory, ready for deployment to any Node.js hosting platform.
We welcome contributions from developers of all skill levels! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Please read our Code of Conduct before contributing.
- Follow the existing code style
- Write meaningful commit messages
- Add tests for new features when applicable
- Update documentation as needed
This project is licensed under the MIT License - see the LICENSE file for details.
Django Rwanda Community
- 📧 Email: hello@djangorwanda.dev
- 📱 Phone: +250 (0) 788 123 456
- 📍 Location: Kigali Innovation Hub, Kigali, Rwanda
- 🐙 GitHub: @djangorwanda
- 🐦 Twitter: @djangorwanda
- Next.js - The React Framework
- Radix UI - Accessible component primitives
- Tailwind CSS - Utility-first CSS framework
- Vercel - Deployment platform
- shadcn/ui - UI component inspiration
- All our amazing community members and contributors!