Build your own planning tool
Start with a working content calendar, then shape it with your AI coding assistant. The small Node.js app has no external dependencies and keeps API credentials on its server.
Try the starter first
Unzip the download, open a terminal in the planning-starter folder and run it with Node.js 20 or later:
npm run demoOpen http://127.0.0.1:3000. The demo uses three invented, clearly labelled events. It shows filtering, date ranges, pagination and a place to save content ideas in your browser. It is not a real event calendar and does not call the API.
Connect your Data subscription
Create a private API key in Data Tools. Add AD_API_KEY to your server’s environment through its private settings, then run:
npm startThe browser calls the starter’s own /api/events route. The server reads your key and calls https://www.awarenessdays.com/wp-json/ad-data/v1/events. The key is never sent to public JavaScript. Failed live requests show an error; they do not fall back to demo records.
The starter is for local development. Add your own user authentication and access controls before making it public; visitors to a shared deployment would otherwise consume your account allowance. Identical reads share a small five-minute server cache.
Give your assistant a concrete brief
Copy this brief into your coding assistant. Provide the key through private server settings, separately from the conversation.
Build a content planning tool using Awareness Days Data.
Read the public API guide:
https://www.awarenessdays.com/data/api/
OpenAPI contract:
https://www.awarenessdays.com/wp-json/ad-data/v1/openapi
MCP setup:
https://www.awarenessdays.com/data/mcp/
Download the working Node.js starter:
https://www.awarenessdays.com/data/planning-starter/
Use its illustrative demo first, then connect with AD_API_KEY kept only in the server environment. Use GET /events with documented filters. Obtain exact category and region labels from /facets. Preserve occurrence keys, all-day date ranges, pagination, guide links and unknown values. Cache identical server-side reads within the account allowance. Never put a key in public JavaScript, a URL or this chat. Label demo data clearly. The API is read-only; store content ideas and publishing tasks in my app. Run the starter's tests after changes.What to build on
- Filtered awareness dates, with occurrence keys, context and guide links.
- Content ideas saved locally in the browser.
- Explicit demo and live modes, safe request validation and clear upstream errors.
- A server-side API connection with a fixed production base URL.
Add campaign briefs, owners, approval steps or publishing tasks in your own application. The Awareness Days API supplies read-only event data; it does not schedule posts or create tasks.
Local notes can be cleared with browser storage. Add your own database if you need durable team planning.
Run the checks
npm testThe included tests exercise the actual HTTP server: illustrative mode, date overlap, filter rejection, pagination, server-only credentials, static-file boundaries, caching and upstream errors.
Read the contract before extending it
API guide · OpenAPI JSON · MCP setup
Use available facet labels and source snapshots. Preserve all-day date ranges, unknown values and guide links. A returned page is only part of a larger result when pages is greater than one.
