Look at the Nuxt documentation to learn more.
Make sure to install dependencies:
# npm
npm install
# pnpm
pnpm install
# yarn
yarn install
# bun
bun installStart the development server on http://localhost:3000:
# npm
npm run dev
# pnpm
pnpm dev
# yarn
yarn dev
# bun
bun run devBuild the application for production:
# npm
npm run build
# pnpm
pnpm build
# yarn
yarn build
# bun
bun run buildLocally preview production build:
# npm
npm run preview
# pnpm
pnpm preview
# yarn
yarn preview
# bun
bun run previewCheck out the deployment documentation for more information.
The events page reads from server/api/events.ts, which keeps the Notion token on the server and exposes normalized event data to the frontend through /api/events.
- Create a Notion integration and copy its internal integration token.
- Share the EventsData Notion table with that integration.
- Copy
.env.exampleto.envand set:
NOTION_API_KEY=secret_your_notion_integration_token
NOTION_EVENTS_DATA_SOURCE_ID=3db749b9b61980df924de00dbedd19beThe current table ID is already in .env.example. The API accepts common property names so the table can stay editor-friendly:
- Event title:
Name,Title,Event, orEvent Name - Date/time:
Date,Event Date,Start,Start Date, orTime - Location:
Location,Venue,Address, orPlace - Filter label:
Category,Campus,State,Branch, orFilter - Description:
Description,Summary,Blurb, orCopy - Image: page cover, or
Image,Poster,Cover, orThumbnail - Signup URL:
Sign Up,Signup,Registration,Register, orRegistration Link - Instagram URL:
Link,Instagram,Instagram Link,Instagram URL,Instagram Post,Social Post,Details,Details Link,More Info, orFind Out More. Only Instagram URLs are exposed; the event's internal Notion page is never used as a public fallback. - Visibility: optional
Published,Publish,Visible, orShow on Website
If Notion is not configured, /api/events returns local fallback events so the page still renders during development.