Cameroon Native Languages is a mobile app that helps users learn and preserve the native languages of Cameroon. It offers interactive lessons, vocabulary exercises, and practical examples to make learning local languages easy and engaging for everyone.β
# Contri-Tok - Cameroonian Language Learning App
A professional, cross-platform mobile application built with React Native and Expo for learning Cameroonian native languages. Features a Duolingo-inspired UI/UX with interactive lessons, quizzes, audio pronunciation, and progress tracking.
## π Features
### π± Mobile App Features
- **Authentication System**: Secure user registration and login
- **Interactive Lessons**: Learn vocabulary with audio pronunciation
- **Quiz System**: Test knowledge with multiple-choice questions
- **Progress Tracking**: Monitor learning streaks and completion rates
- **Audio Pronunciation**: Native language audio with speech synthesis
- **Duolingo-inspired UI**: Modern, colorful, and engaging interface
- **Offline Support**: Cache lessons for offline learning
- **Multi-language Support**: Learn multiple Cameroonian languages
### π― Supported Languages
- **Duala** (Littoral Region) - Beginner friendly
- **Bamileke** (West Region) - Intermediate level
- **Fulfulde** (North Region) - Advanced level
- **Ewondo** (Centre Region) - Beginner friendly
### π§ Backend Features
- **RESTful API**: Node.js with Express.js
- **Database**: MongoDB with Mongoose ODM
- **Authentication**: JWT-based secure authentication
- **Admin Panel**: Content management for lessons and languages
- **Analytics**: User progress and engagement tracking
- **Rate Limiting**: API protection and security
## π Quick Start
### Prerequisites
- Node.js (v16 or higher)
- npm or yarn
- MongoDB (local or cloud)
- Expo CLI (`npm install -g expo-cli`)
- Android Studio (for Android development)
- Xcode (for iOS development, macOS only)
### π¦ Installation
1. **Clone the repository**
```bash
git clone
cd "Cameroon Native Languages"
```
2. **Install mobile app dependencies**
```bash
npm install
```
3. **Install backend dependencies**
```bash
cd backend
npm install
```
4. **Setup environment variables**
```bash
# In backend/.env
NODE_ENV=development
PORT=3000
MONGODB_URI=mongodb:/ β¦