{"version":1,"pages":[{"id":"xowqAap4dDgXJCLwrG0C","title":"Introduction","pathname":"/introduction","siteSpaceId":"sitesp_YUSo5","icon":"hand-wave","description":"FeedSpring is a social feed platform that separates data from display — you own the design, we handle the data.","breadcrumbs":[{"label":"Getting Started"}]},{"id":"4sFTjY8SzXCHKMffUj5Z","title":"Choose your setup","pathname":"/introduction/getting-started/choose-your-setup","siteSpaceId":"sitesp_YUSo5","icon":"signs-post","description":"Pick the best way to add FeedSpring to your site: pre-made components, attributes, or the GraphQL API.","breadcrumbs":[{"label":"Getting Started"}]},{"id":"KG66IeqgRpM9c3stVQNX","title":"Quickstart","pathname":"/introduction/getting-started/quickstart","siteSpaceId":"sitesp_YUSo5","icon":"book","description":"Get a live FeedSpring feed on your site in under two minutes using HTML attributes.","breadcrumbs":[{"label":"Getting Started"}]},{"id":"reP66KqvKpIx2j7ryO2C","title":"Webflow","pathname":"/introduction/build-with/webflow","siteSpaceId":"sitesp_YUSo5","icon":"webflow","description":"Build FeedSpring feeds visually in the Webflow Designer using custom attributes and pre-made components.","breadcrumbs":[{"label":"Build with"}]},{"id":"3TEsyZs0cYarIeSGrgyD","title":"Framer","pathname":"/introduction/build-with/framer","siteSpaceId":"sitesp_YUSo5","icon":"square-dashed","description":"Copy a FeedSpring component into Framer and control it entirely through property controls.","breadcrumbs":[{"label":"Build with"}]},{"id":"VU7jqbJGpHJS2EXWY3f7","title":"React & Next.js","pathname":"/introduction/build-with/react-nextjs","siteSpaceId":"sitesp_YUSo5","icon":"react","description":"Add FeedSpring feeds to React and Next.js apps with the GraphQL API or attributes.","breadcrumbs":[{"label":"Build with"}]},{"id":"wyX0E8RQMRYDNCztq7AK","title":"Overview","pathname":"/introduction/graphql-api/overview","siteSpaceId":"sitesp_YUSo5","icon":"rectangle-api","description":"Fetch any FeedSpring feed as structured data with GraphQL, and render it in any website, app or backend.","breadcrumbs":[{"label":"GraphQL API"}]},{"id":"KEcUN0fvIhF6srJfL9Jj","title":"Quickstart","pathname":"/introduction/graphql-api/quickstart","siteSpaceId":"sitesp_YUSo5","description":"Send your first GraphQL query and get a FeedSpring feed back as JSON.","breadcrumbs":[{"label":"GraphQL API"}]},{"id":"W7lmlbGg69o2Y8INRrqb","title":"Querying Feeds","pathname":"/introduction/graphql-api/querying-feeds","siteSpaceId":"sitesp_YUSo5","description":"How the feed query works: feed types, inline fragments, collections under nodes, nullability and item limits.","breadcrumbs":[{"label":"GraphQL API"}]},{"id":"WjbOdC7HbcEOLVHnULHd","title":"Images","pathname":"/introduction/graphql-api/images","siteSpaceId":"sitesp_YUSo5","description":"Request resized, reformatted and responsive images from any FeedSpring image field.","breadcrumbs":[{"label":"GraphQL API"}]},{"id":"SBIHbkNbPvqNnrQTxetE","title":"Access & Security","pathname":"/introduction/graphql-api/access-and-security","siteSpaceId":"sitesp_YUSo5","description":"How FeedSpring Feed IDs work as public keys, and how to restrict a feed to your own domains.","breadcrumbs":[{"label":"GraphQL API"}]},{"id":"TM3drXQEIGj9XZsa9Qo2","title":"Errors","pathname":"/introduction/graphql-api/errors","siteSpaceId":"sitesp_YUSo5","description":"The GraphQL error format and every FeedSpring error code.","breadcrumbs":[{"label":"GraphQL API"}]},{"id":"ht1iRWsAjvSeRxSdVRXJ","title":"Limits & Caching","pathname":"/introduction/graphql-api/limits-and-caching","siteSpaceId":"sitesp_YUSo5","description":"Request size and complexity limits, plan view allowances, and how to cache feed responses.","breadcrumbs":[{"label":"GraphQL API"}]},{"id":"LOiD1sWzz8scbMHfI8Fa","title":"Schema Reference","pathname":"/introduction/graphql-api/schema-reference","siteSpaceId":"sitesp_YUSo5","description":"Discover the FeedSpring GraphQL schema through introspection or download it as an SDL file.","breadcrumbs":[{"label":"GraphQL API"}]},{"id":"VLnjDyyV1Mn3O6gfGSYZ","title":"Overview","pathname":"/introduction/attributes/overview","siteSpaceId":"sitesp_YUSo5","icon":"html5","description":"Build a live feed into any HTML page with three attributes. No build step, no backend, no JavaScript to write.","breadcrumbs":[{"label":"Attributes"}]},{"id":"CWrQfevRCtHfTUNrjHqu","title":"Installation","pathname":"/introduction/attributes/installation","siteSpaceId":"sitesp_YUSo5","description":"Add the FeedSpring script for your feed source, find your Feed ID, and install on any platform.","breadcrumbs":[{"label":"Attributes"}]},{"id":"gRXoNeGYG12ANPkhaSJe","title":"Fields & Elements","pathname":"/introduction/attributes/fields-and-elements","siteSpaceId":"sitesp_YUSo5","description":"The feedspring and feed-field attributes in detail: wrappers, post templates, element types, and post versus profile fields.","breadcrumbs":[{"label":"Attributes"}]},{"id":"xKH07S9MaFySLCgDp7Ff","title":"Rendering","pathname":"/introduction/attributes/rendering","siteSpaceId":"sitesp_YUSo5","icon":"chart-simple-horizontal","description":"Static and dynamic rendering, combined layouts, and how rendered posts appear.","breadcrumbs":[{"label":"Attributes"}]},{"id":"BT4WrO3Z3OHBUgUE9PzT","title":"Feed Options","pathname":"/introduction/attributes/feed-options","siteSpaceId":"sitesp_YUSo5","icon":"filter","description":"Control how many posts render, which posts to skip, and the locale used for numbers, with the feed-options attribute.","breadcrumbs":[{"label":"Attributes"}]},{"id":"kqzZWLnnmCVGOgFMruEV","title":"Loading & Events","pathname":"/introduction/attributes/loading-and-events","siteSpaceId":"sitesp_YUSo5","description":"Show a placeholder while a feed loads, run code when it has rendered, and keep Webflow Interactions working.","breadcrumbs":[{"label":"Attributes"}]},{"id":"jSFuZt2mi8igqeZPTo8o","title":"Special Fields","pathname":"/introduction/attributes/special-fields","siteSpaceId":"sitesp_YUSo5","description":"Fields that do more than insert a value: background images, timestamp formatting, star ratings, verified badges and tags.","breadcrumbs":[{"label":"Attributes"}]},{"id":"AmfL7GuOU4ZXW3G9TFrv","title":"Troubleshooting","pathname":"/introduction/attributes/troubleshooting","siteSpaceId":"sitesp_YUSo5","description":"Why an attributes feed isn't rendering, and how to fix it: a checklist, common mistakes and known issues.","breadcrumbs":[{"label":"Attributes"}]},{"id":"WqRSGwHILLfRNX4vUfu2","title":"Attributes Reference","pathname":"/introduction/attributes/reference","siteSpaceId":"sitesp_YUSo5","icon":"book-bookmark","description":"Complete reference of every FeedSpring attribute, option and field. Written for developers and AI coding agents.","breadcrumbs":[{"label":"Attributes"}]},{"id":"OkF86T1Jsb1AGZs9NSHS","title":"Instagram","pathname":"/introduction/feeds/instagram","siteSpaceId":"sitesp_YUSo5","icon":"square-instagram","description":"Display Instagram posts, captions, engagement data and profile information on your site.","breadcrumbs":[{"label":"Feeds"}]},{"id":"lHbIF43B3I27pak63BFy","title":"Google Reviews","pathname":"/introduction/feeds/google-reviews","siteSpaceId":"sitesp_YUSo5","icon":"google","description":"Display Google Reviews with star ratings, reviewer details, and aggregate rating data.","breadcrumbs":[{"label":"Feeds"}]},{"id":"jHBGJoImambq2kz7OHgx","title":"TikTok","pathname":"/introduction/feeds/tiktok","siteSpaceId":"sitesp_YUSo5","icon":"tiktok","description":"Display TikTok videos with thumbnails, inline playback, engagement counts and profile data.","breadcrumbs":[{"label":"Feeds"}]},{"id":"V3r5lpAw0lq9muirfHNs","title":"Dribbble","pathname":"/introduction/feeds/dribbble","siteSpaceId":"sitesp_YUSo5","icon":"dribbble","description":"Display Dribbble shots and designer profile information as a live portfolio feed.","breadcrumbs":[{"label":"Feeds"}]},{"id":"U7ydpgCdpfXxZkEvIkjp","title":"Feeds & Syncing","pathname":"/introduction/core-concepts/feeds-and-syncing","siteSpaceId":"sitesp_YUSo5","icon":"arrows-spin","description":"What a feed is, how FeedSpring keeps it updated, and how often content refreshes on each plan.","breadcrumbs":[{"label":"Core Concepts"}]},{"id":"BXUCAcBZqomN6hMNOAQU","title":"Posts & Fields","pathname":"/introduction/core-concepts/posts-and-fields","siteSpaceId":"sitesp_YUSo5","icon":"database","description":"How FeedSpring structures feed data into posts and fields, and why that structure is the same across every delivery method.","breadcrumbs":[{"label":"Core Concepts"}]},{"id":"5RwZnBhVTBCvLjPnoIxx","title":"Filtering","pathname":"/introduction/core-concepts/filtering","siteSpaceId":"sitesp_YUSo5","icon":"filter","description":"Filter which content a feed contains in the FeedSpring dashboard, for every delivery method at once.","breadcrumbs":[{"label":"Core Concepts"}]},{"id":"HbzX19q6R9dc6SWGTBcM","title":"Plans","pathname":"/introduction/core-concepts/plans","siteSpaceId":"sitesp_YUSo5","icon":"credit-card","description":"How many posts each feed holds, how often it refreshes, and the monthly view allowance on each plan.","breadcrumbs":[{"label":"Core Concepts"}]}]}