Skip to content

Repository files navigation

AISafety.com

A community resource website helping people find events, organizations, jobs, funding, and learning resources in AI safety. Migrated from WebFlow.

Tech Stack

What Technology
Framework Next.js 16 (App Router)
Language TypeScript
Styling Constraint-based CSS (not Tailwind)
Data Airtable
Map D3.js
Deployment Vercel

Getting Started

nvm use
npm install
npm run dev

That's it — no credentials needed. Without Airtable credentials the dev server runs in contributor mode: it fetches the site's data from the live site's public Data API, so anyone can clone the repo and see the full site locally.

A few things work differently in contributor mode:

  • Featured cards don't show (their curation data is internal).
  • The "Updated X days ago" line under page titles is hidden.
  • Features that need private credentials — the suggestion forms, the admin panel, and the chatbot — won't work.

None of that gets in the way of working on pages, components, styling, or the map.

Team setup (direct Airtable access)

Team members with access to the Airtable base create .env.local:

AIRTABLE_TOKEN=your_token
AIRTABLE_BASE_ID=your_base_id

Commands

npm run dev          # Start dev server
npm run build        # Production build
npm run lint         # Run linting
npm run format       # Format code
npm run type-check   # Type check

Project Structure

src/
├── app/                    # Pages and API routes
│   ├── page.tsx            # Homepage
│   ├── layout.tsx          # Root layout (nav + footer)
│   ├── globals.css         # All global styles
│   ├── map/                # Interactive field map (D3.js)
│   ├── events/
│   ├── training/
│   ├── api/                # Backend API routes
│   │   ├── ...
├── components/             # Reusable UI pieces
│   ├── ...
public/
├── images/                 # Icons, logos, background images
docs/                       # Detailed documentation
backup/
├── *.html                  # Original WebFlow exports (reference only)

Public Data API

A read-only JSON API exposes the directories (communities, events, organizations, jobs, funding, …) for reuse by other AI-safety sites and tools, with no API key, CORS open, data licensed CC-BY-4.0. Human docs at /developers; spec at /api/v1/openapi.json. See docs/api.md.

Documentation

About

Issue tracker for AISafety.com

Resources

Stars

4 stars

Watchers

7 watching

Forks

Releases

Packages

Contributors

Languages