rsnext/examples/cms-sitefinity
Nick Anisimov cd557c9667
fix(cms-examples): title warning (#46262)
## Bug

- [x] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have a helpful link attached, see [`contributing.md`](https://github.com/vercel/next.js/blob/canary/contributing.md)

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] [e2e](https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs) tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have a helpful link attached, see [`contributing.md`](https://github.com/vercel/next.js/blob/canary/contributing.md)

## Documentation / Examples

- [x] Make sure the linting passes by running `pnpm build && pnpm lint`
- [ ] The "examples guidelines" are followed from [our contributing doc](https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md)

Fixes #46261
2023-02-23 15:21:03 +00:00
..
components Run next/link codemod for Next.js 13 on examples (#41913) 2022-10-30 21:00:45 +01:00
interfaces chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00
lib chore(examples): fix lint 2022-10-01 16:05:23 +02:00
pages fix(cms-examples): title warning (#46262) 2023-02-23 15:21:03 +00:00
public/favicon chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00
sitefinity chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00
styles chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00
.env.local.example chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00
.gitignore chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00
next-env.d.ts chore(examples): update with-linaria (#41085) 2022-10-01 15:34:55 +02:00
package.json chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00
postcss.config.js chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00
README.md chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00
tailwind.config.js chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00
tsconfig.json chore(examples): Add 'Sitefinity CMS' Example (#39537) 2022-10-01 15:26:37 +02:00

A statically generated blog example using Next.js and Sitefinity CMS

This is the existing cms-sitefinity plus TypeScript. This example showcases Next.js's Static Generation feature using Sitefinity CMS as the data source.

Demo

https://next-cms-sitefinity.vercel.app/

Deploy your own

Deploy the example using Vercel or preview live with StackBlitz

Deploy with Vercel

How to use

Execute create-next-app with npm, Yarn, or pnpm to bootstrap the example:

npx create-next-app --example cms-sitefinity cms-sitefinity-app
yarn create next-app --example cms-sitefinity cms-sitefinity-app
pnpm create next-app --example cms-sitefinity cms-sitefinity-app

Configuration

Step 1. Setup the CMS locally (version >=14.27922)

First, install and run the CMS Locally.

Step 2. Import the ready to use dynamic module 'Posts'

For the purpose of this demo a ready to use dynamic module was build containing two types - 'Post' and 'Author'.

In order to install it:

  1. Open the CMS Administration under (/Sitefinity)
  2. Open the Export/Import screen under (/Sitefinity/Administration/Packaging)
  3. Click on Import Zip file and import the file from the sitefinity folder

Step 3. Enable the web service

By default the web services are not allowed for anonymous users, so the yhave to be enabled.

Go to /sitefinity/Administration/WebServices and edit the 'Default' web service to allow it to be accessible by 'Everyone'

Step 4. Install the GraphQL package

  1. Add the Sitefinity CMS nugget source
  2. Install the Progress.Sitefinity.GraphQL package (enable prerelease filter).

Step 5. Set up environment variables

Copy the .env.local.example file in this directory to .env.local (which will be ignored by Git):

cp .env.local.example .env.local

Then set each variable on .env.local

Step 6. Run Next.js in development mode

npm install
npm run dev

# or

yarn
yarn dev

Your blog should be up and running on http://localhost:3000! If it doesn't work, post on GitHub discussions.