@mrtimeey/everybodycodes-data
v1.4.1
Published
Simple client for fetching data and submitting answers
Downloads
28
Readme
@mrtimeey/everybodycodes-data
🧩 A lightweight Node.js client for fetching and decrypting Everybody Codes inputs automatically.
✨ Features
- Fetch and decrypt puzzle input data from everybody.codes
- Fully typed API (TypeScript)
- Built-in test mocks via
undici.MockAgent - Automatically validated examples and README code blocks in CI
- API-stable and documented via API Extractor
🚀 Installation
npm install @mrtimeey/everybodycodes-data
# or
pnpm add @mrtimeey/everybodycodes-data📘 Usage
import { EverybodyCodesClient } from "@mrtimeey/everybodycodes-data";
const client = new EverybodyCodesClient("your-everybody-codes-session-cookie");
// Fetch and decrypt full quest data
const data = await client.getEventData("2025", 1);
console.log(data); // { 1: "input text part 1", 2: "...", 3: "..." }
// Fetch only a single part
const part1 = await client.getEventPartData("2025", 1, 1);
console.log(part1);💡 Your
session-cookiemust match theeverybody-codescookie from your logged-in browser.
🧩 API Reference
The public API surface is automatically tracked by API Extractor.
See etc/everybodycodes-data.api.md for the latest exported types.
The public API is also documented through Typedoc on GH-Pages.
🧱 Development
Prerequisites
- Node.js ≥ 18.17
- npm ≥ 9 or pnpm ≥ 8
Setup
npm ciRun all checks
npm test
npm run buildLint & Format
npm run lint
npm run format🔄 Release Workflow
This repository uses release-please:
- Conventional commits (
fix:,feat:) update changelog and version bump via PR. - Merge the release PR → Git tag is created.
- GitHub Actions publish the package to npm with provenance.
🛡️ Security
See SECURITY.md for responsible disclosure guidelines.
🤝 Contributing
Contributions, issues, and pull requests are welcome!
See CONTRIBUTING.md for details.
📄 License
MIT © Tim Kruse
