Educational web app connecting African French country speaking students to global opportunities.
# Kivu Tech
**Kivu Tech** is a multilingual Flask platform connecting African students to international opportunities. Built by Fariji B Medard from Bukavu, Democratic Republic of Congo.
## Features
- **Opportunities Hub**: Scholarships, fellowships, programs, hackathons, and internships
- **Portfolio**: Showcase of tech projects with case studies
- **Free Learning Platform**: Video courses for mathematics and programming
- **Blog**: Articles on technology, education, and career development
- **Developers Community**: Directory of developers with profile submission and approval workflow
- **Multilingual Support**: French (default), English, and Swahili
- **Admin Dashboard**: Full content management without code editing
## Tech Stack
- **Backend**: Python 3.11 + Flask
- **Database**: SQLite (development) / Azure SQL (production)
- **Templates**: Jinja2
- **Styling**: Custom CSS with dark/light mode
- **Security**: CSRF protection, password hashing (werkzeug)
- **Cloud**: Microsoft Azure SQL Database ready
## Installation
### 1. Clone the Repository
```bash
git clone
github.com
cd kivu-tech/kivu-tech-flask
```
### 2. Create Virtual Environment (Optional but Recommended)
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```
### 3. Install Dependencies
```bash
pip install -r requirements.txt
```
### 4. Configure Environment Variables
Copy the example environment file and edit it:
```bash
cp .env.example .env
```
Edit `.env` with your values:
```env
# Generate a secure secret key
SESSION_SECRET=your-secure-secret-key-here
# Admin credentials for /admin dashboard
ADMIN_USERNAME=your-admin-username
ADMIN_PASSWORD=your-secure-password
# Optional: Custom database path
# DATABASE_PATH=./kivu_tech.db
```
**Generate a secure secret key:**
```bash
python -c "import secrets; print(secrets.token_hex(32))"
```
### 5. Initialize the Database
The database will be automatically created on firs …