For people and planet: eco-socialist analysis from Africa and the Global South.
An Astro-powered publication exploring capitalism, colonialism, and climate collapse through a decolonial, eco-socialist lens.
- Eco-socialist analysis of capitalism, colonialism, and climate systems
- Decolonial perspective rooted in Africa and the Global South
- Markdown and MDX content support
- Reading time estimates and table of contents support
- Responsive layout with accessibility-focused markup
- SEO metadata support and feed generation (RSS, Atom, JSON Feed)
- Built-in search with JSON index
- Category pages for content organization
- Framework: Astro with MDX integration
- Language: TypeScript
- Styling: Scoped CSS with CSS variables
- Fonts: self-hosted via @fontsource (Oswald, Work Sans, JetBrains Mono)
- Icons: Remixicon
- Build tools: Fontaine for font metric optimization
Prerequisites: Node.js 22.21.1 or higher, Git.
git clone https://github.com/theredsoil/laterite.git
cd laterite
npm install
npx lefthook install # set up git hooks
npm run devLocal dev server: http://localhost:4321
Site configuration lives in src/config.ts.
Create dispatches as Markdown or MDX files in src/content/dispatches/.
---
title: "Your Article Title"
datePublished: "YYYY-MM-DD"
description: "Brief SEO description"
author: "Your Name"
excerpt: "Short summary for listings"
categories: ["Category1", "Category2"]
tags: ["tag1", "tag2"]
image: "/images/your-open-graph-image.webp"
---For editorial and submission standards, read EDITORIAL_GUIDELINES.md.
All commands are run from the project root.
| Command | Action |
|---|---|
npm install |
Install dependencies |
npm run dev |
Start local dev server at localhost:4321 |
npm run build |
Build production site to ./dist/ |
npm run preview |
Preview local production build |
npm run check |
Check TypeScript types |
npm run format |
Format code with Prettier |
npm run test |
Run tests with Vitest |
Build the site and deploy the dist/ folder to any static hosting service.
Contributions are welcome for both code and content.
- Add posts in
src/content/dispatches/with the required frontmatter - Run
npm run checkandnpm run testbefore opening a pull request - Follow commit prefixes:
Add:,Fix:,Update:,Remove:,Docs: - Follow the editorial standards in
EDITORIAL_GUIDELINES.md
This project is dual licensed.
- Code: MIT License
- Content: CC0 1.0 Universal
See LICENCE for full details and SPDX identifiers.
- Built with Astro
- Icons by Remixicon
- Fonts by Fontsource
- Theme base: Volks-Typo