Skip to content

Repository files navigation

Sankore — Arab World & Africa Security Research Index

A public, open archive of cybersecurity research from the Arab world and Africa: conference talks, tools, CVEs, papers — and the researchers behind them, on an opt-in basis.

Inspired by Atlas Latino.

How it works

  • All data lives in this repo as YAML under data/, validated in CI.
  • The site is generated statically (Astro) and deployed from this repo.
  • Anyone can contribute a work via the web form (generates a PR) or a direct PR.
  • Researchers can claim their profile to unlock bio, photo, and links. Unclaimed profiles show only a name and linked works. See GOVERNANCE.md.

Contributing

  1. data/works/ — add a talk, tool, CVE, paper (see data/schema/work.schema.json).
  2. data/people/ — stubs only unless it's you (consent model in GOVERNANCE.md).
  3. data/events/ — regional conferences, BSides, meetups, CTFs.
  4. Run npm run validate before opening a PR.

Development

npm install
npm run setup:py     # creates .venv and installs the validator's deps
npm run dev

npm run build runs the data validator first and refuses to build on invalid data. npm run validate runs it on its own.

Dependency lockfile

CI runs npm install, not npm ci. Astro depends on sharp, whose optional @img/sharp-wasm32 package declares @emnapi/runtime; npm does not write that entry into a lockfile generated on macOS, so npm ci fails on Linux runners with an EUSAGE "out of sync" error even though nothing is actually wrong. Versions are still pinned by the lockfile — install only reconciles the platform-specific optional packages. Commit package-lock.json as usual.

Maintainers

  • (add 2–3 regional co-maintainers here before public launch)

License

Data: CC BY 4.0 · Code: MIT (pending confirmation)

About

A public archive of security research from the Arab world and Africa. Works are indexed by default; people are opt-in.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages