The public website for Notificator, a free and open-source notification ecosystem that turns meaningful WordPress, Strapi, Astro, and backend events into local activity, mobile push notifications, optional email alerts, MQTT messages, and notifications on compatible physical devices.
The site presents the complete Notificator ecosystem, publishes project updates, provides support and privacy information, and documents the open-source tools and creative work used to build it.
- How it works explains the platform-neutral path from a website event to local or connected delivery.
- Integrations compares the available event sources and their shared delivery model.
- WordPress Plugin introduces the stable hook-discovery, template, local-alert, export, and delivery workflow.
- Strapi Extension introduces the Strapi 5 lifecycle-rule preview, local activity, admin toasts, and optional connected delivery.
- Astro Integration covers server-side alerts from Astro Actions, API routes, webhooks, server-rendered workflows, and successful builds.
- Public API accepts authenticated server-side alerts through the hosted Notificator delivery service.
- Node.js SDK provides a typed server client for the hosted API without exposing platform credentials.
- Web dashboard (beta) introduces browser registration, API-key management, shared notifications, and MQTT device monitoring, with session-only credentials or optional encrypted account storage. The header's Sign in button links directly to the dashboard login. Mobile and plugin retrieval of saved account credentials is planned; those clients still use separate connection settings.
- Mobile app explains accounts, connected sites, push and optional email delivery, searchable weather locations, secure MQTT connection testing, model-aware device controls, and firmware status.
- Devices covers Notificator Base, the Touch 3.49 preview, MQTT, open-source firmware, community builds, and enclosure attribution.
- Get a device compares supported ready-made hardware, free community batches, and the complete maker route without implying that the project sells devices.
- Build a device explains the ESP32-C3 electronics, OLED and touch hardware, wiring, the Bambu Lab A1 mini and AMS lite printing setup, beginner-friendly 3D printing, assembly, firmware, materials, licensing, the planned MakerWorld collection, and the project’s WordCamp Athens 2025 presentation.
- Firmware installer loads the official multi-model catalog and installs the matching Base or Touch factory image over USB using ESP Web Tools.
- Changelog brings meaningful releases from the WordPress Plugin, Strapi Extension, Astro Integration, web dashboard, mobile app, firmware, API, website, and documentation into one filterable timeline.
- Journal contains release notes, development updates, and project stories, with a standard RSS feed.
- Support provides troubleshooting for integrations, apps, accounts, and devices.
- Privacy describes how data is handled across the project.
- Credits acknowledges the libraries, fonts, services, tools, and creative work used by the site.
The website is a statically generated Astro project. Its direct dependencies include:
- Astro, Astro MDX, and Astro Sitemap
- AstroLib SEO
- ESP Web Tools for browser-based firmware installation
- Sharp for build-time image processing
- OpenDyslexic through Fontsource
- Netlify CLI for local Netlify workflows
- Prettier and the Astro Prettier plugin
The complete dependency versions are maintained in package.json and package-lock.json. Direct project credits and licenses are also presented on the public Credits page.
Use a current Node.js LTS release and npm.
npm ci
npm run devThe development server prints its local and network URLs in the terminal. The network URL is useful for checking the responsive layout on a physical phone or tablet.
If the lockfile is intentionally being updated, use npm install and commit the resulting package-lock.json changes together with package.json.
| Command | Purpose |
|---|---|
npm run dev |
Start the development server with network access |
npm start |
Start the standard Astro development server |
npm run build |
Generate the production site in dist/ |
npm run preview |
Preview the generated production site |
Run npm run build before opening a pull request. The build validates every static route and generates optimized images and the XML sitemap.
public/ Static icons, favicons, robots.txt, and llms.txt
src/assets/images/ Images processed and optimized by Astro
src/components/ Landing, blog, form, and shared UI components
src/content/posts/en/ English blog posts written in MDX
src/data/ Structured changelog and other reusable site data
src/layouts/ Shared page and article layouts
src/pages/ File-based website routes
src/styles/ Global styles and design tokens
Add an .mdx file to src/content/posts/en/. Each post must include the fields defined in src/content/config.ts:
- Publication date
- Author
- Title and description
- Featured image and alternative text
- Tags
Posts are ordered by publication date. The newest post becomes the featured story on the blog page.
The same collection generates the versioned public JSON feed at
/api/v1/journal.json.
The Notificator mobile app consumes this feed for its News screen and home-page
project updates, so publishing the website also updates the app's content source.
It also generates the standard /rss.xml
feed for RSS readers. Both feeds are produced from the same entries and publication
dates.
Blog comments are provided by giscus and stored in GitHub Discussions. The integration is configured in src/components/blog/Comments.astro.
The contact and newsletter forms use Netlify Forms. Their client-side enhancement submits without reloading the page and displays an accessible success or error message.
The production site is generated in dist/ and deployed through Netlify. Local Astro development can render and validate the forms, but Netlify processes actual submissions after deployment.
Accessibility is treated as part of the site rather than an optional extra. Current considerations include:
- Semantic landmarks and heading structure
- A keyboard-accessible skip link and visible focus states
- Responsive layouts for phones, tablets, and desktop screens
- Reduced-motion support
- Descriptive image alternative text
- Status regions for form responses
- An optional OpenDyslexic font control that stores its preference on the visitor's device
Accessibility improvements and reports are welcome through the project issue tracker.
The production build includes:
- Per-page canonical, Open Graph, and social metadata
- An automatically generated XML sitemap
robots.txtllms.txtwith important project pages and resources- A versioned JSON Journal feed for the mobile app
- A standard RSS 2.0 Journal feed with browser feed discovery
- Public documentation for the hosted API,
@notificator-project/apiNode.js SDK, and@notificator-project/astrointegration
Notificator is an independent open-source project. It is not affiliated with, endorsed by, or sponsored by WordPress.org, the WordPress Foundation, Automattic, Strapi Solutions SAS, Waveshare, or HiveMQ. Product and service references describe compatibility, community participation, supported hardware, or user-owned infrastructure; their names, trademarks, services, and terms remain their own.
Bug reports and focused improvements are welcome through GitHub Issues.
Please keep changes focused, preserve the existing visual and accessibility patterns, and confirm that npm run build succeeds before submitting a pull request.
This repository is released under The Unlicense.
Third-party software, fonts, services, trademarks, and creative assets retain their original licenses and ownership. See the Credits page for acknowledgements and attribution.