dineway
v0.1.4
Published
Agentic Web builder with WordPress migration support
Downloads
393
Readme
dineway
The core Dineway Agentic Web builder package - an agentic website builder for your restaurants or local businesses.
Installation
npm install dinewayFeatures
- Content Management - Collections, fields, Live Collections integration
- Media Library - Upload via signed URLs, S3-compatible storage
- Full-Text Search - FTS5 with Porter stemming, per-collection config
- Navigation Menus - Hierarchical menus with URL resolution
- Taxonomies - Categories, tags, custom taxonomies
- Widget Areas - Content, menu, and component widgets
- Sections - Reusable content blocks
- Plugin System - Hooks, storage, settings, admin pages
- WordPress Import - WXR, REST API, WordPress.com
Quick Start
// astro.config.mjs
import { defineConfig } from "astro/config";
import dineway, { local } from "dineway/astro";
import { sqlite } from "dineway/db";
export default defineConfig({
integrations: [
dineway({
database: sqlite({ url: "file:./data.db" }),
storage: local({
directory: "./uploads",
baseUrl: "/_dineway/api/media/file",
}),
}),
],
});// src/live.config.ts
import { defineLiveCollection } from "astro:content";
import { dinewayLoader } from "dineway/runtime";
export const collections = {
_dineway: defineLiveCollection({ loader: dinewayLoader() }),
};API
import {
getDinewayCollection,
getDinewayEntry,
getSiteSettings,
getMenu,
getTaxonomyTerms,
getWidgetArea,
search,
} from "dineway";
// Content
const { entries } = await getDinewayCollection("posts");
const { entry } = await getDinewayEntry("posts", "hello-world");
// Site settings
const settings = await getSiteSettings();
// Navigation
const menu = await getMenu("primary");
// Taxonomies
const categories = await getTaxonomyTerms("categories");
// Widgets
const sidebar = await getWidgetArea("sidebar");
// Search
const results = await search("hello world", { collections: ["posts"] });Documentation
See the documentation docs for guides, API reference, and plugin development.
