Official website for KenyaNLP - advancing language technology for Kenya's 40+ indigenous languages
# KenyaNLP Website
Official website for **KenyaNLP** - a Masakhane-affiliated research community advancing NLP, benchmarking, and AI tools for Kenya's 40+ indigenous languages.
## Tech Stack
- **Framework:** Astro v6 (static site generator)
- **Styling:** Tailwind CSS v4
- **Fonts:** Sora, DM Serif Display, JetBrains Mono (Google Fonts)
- **SEO:** Auto-generated sitemap, Open Graph, structured data (JSON-LD)
- **Form backend:** PHP (for cPanel deployment)
- **Deployment target:** cPanel (static HTML upload)
## Project Structure
```
kenyanlp/
├── src/
│ ├── layouts/
│ │ └── Base.astro # Shared layout (head, nav, footer, SEO meta)
│ ├── components/
│ │ ├── Nav.astro # Responsive navigation with mobile menu
│ │ ├── Footer.astro # Site footer
│ │ ├── Card.astro # Reusable card component
│ │ └── SectionHeader.astro # Reusable section header
│ ├── pages/
│ │ ├── index.astro # Home page
│ │ ├── about.astro # About page
│ │ ├── projects.astro # Projects page (filterable, expandable)
│ │ ├── team.astro # Team page (photos, bios, LinkedIn)
│ │ ├── community.astro # Community page
│ │ └── contact.astro # Contact form page
│ └── styles/
│ └── global.css # Tailwind config + custom design tokens
├── public/
│ ├── team/ # Team member photos
│ ├── api/
│ │ └── contact.php # PHP form handler (for cPanel)
│ ├── robots.txt # SEO crawl directives
│ ├── favicon.svg
│ └── favicon.ico
├── astro.config.mjs # Astro + Tailwind + Sitemap config
├── package.json
├── tsconfig.json
└── IMPROVEMENT_PLAN.txt # Detailed content/layout improvement roadmap
```
## Prerequisites
- **Node.js v22.12.0 or higher** (even-numbered versions only)
- npm (comes with Node.js)
### Check your Node version
```bash
node --version
```
If below v22, install via nvm:
```bash
nvm install 22
nvm use …