Redesign of the NOODL licensing website — audience-specific pages, a CC-style layered license explainer, embedded dataset cards, and an impact blog. Built in HTML/CSS and React, migrating to WordPress.
# Licensing African Datasets (WordPress)
This repository contains a WordPress site that serves the **“Licensing African Datasets”** front-end via a custom theme.
The WordPress core lives at the repository root, while the application UI is packaged as a bundled front-end under:
- `wp-content/themes/DS-LAW-LAB-LICENSE/`
---
## 1) Repository layout (high level)
### WordPress core (root)
Key WordPress entry points:
- `index.php` – front controller
- `wp-config.php` – database + environment configuration
- `wp-admin/` – admin UI
- `wp-includes/` – WP core libraries
### Custom theme (application)
The custom theme is located at:
- `wp-content/themes/DS-LAW-LAB-LICENSE/`
Important theme files:
- `functions.php` – enqueues theme CSS/JS
- `index.php` – WordPress template that outputs the app mount point
- `index.html` – built HTML entry (includes `#root` and references hashed build artifacts)
- `style.css` – theme header (currently minimal)
- `assets/` – compiled front-end build artifacts (JS/CSS, images, etc.)
---
## 2) How the front-end is served
### Theme mount point
`wp-content/themes/DS-LAW-LAB-LICENSE/index.php` contains the mount element:
- ` `
It also calls:
- `wp_head()` and `wp_footer()` for WordPress integration.
### Asset loading
In `wp-content/themes/DS-LAW-LAB-LICENSE/functions.php`, the theme registers/enqueues assets using WordPress hooks:
- Adds a custom CSS enqueue pointing to `assets/index.css`
- Adds a custom JS enqueue pointing to `assets/index.js`
Additionally, `wp-content/themes/DS-LAW-LAB-LICENSE/index.html` references the hashed build artifacts directly, for example:
- `assets/index-B6tpW-rd.js`
- `assets/index-DGPLTSPD.css`
> Note: The repo currently contains both a PHP-driven enqueue approach and an HTML approach that references hashed artifacts. If you change build output filenames, make sure the references in `index.html` and the enqueues in `functions.php` match the emitted files.
---
## 3) Local setup / deployment
# …