diff --git a/docs/client/overview.md b/docs/client/overview.md index b6eda46652..151a214367 100644 --- a/docs/client/overview.md +++ b/docs/client/overview.md @@ -351,3 +351,15 @@ fastify.post('/', async (request, reply) => { return res }) ``` + +## Errors in Platformatic Client + +Platformatic Client throws the following errors when an unexpected situation occurs: +* `PLT_CLIENT_OPTIONS_URL_REQUIRED` => in your client options, you should provide a valid `url` +* `PLT_CLIENT_FORM_DATA_REQUIRED` => you should pass a `FormData` object (from `undici` request) since you're doing a `multipart/form-data` request +* `PLT_CLIENT_MISSING_PARAMS_REQUIRED` => a url path params is missing (and should be added) when doing the client request +* `PLT_CLIENT_WRONG_OPTS_TYPE` => a wrong client option type has been passed (and should be properly updated) +* `PLT_CLIENT_INVALID_RESPONSE_SCHEMA` => response can't be properly validated due to missing status code +* `PLT_CLIENT_INVALID_CONTENT_TYPE` => response contains an invalid content type +* `PLT_CLIENT_INVALID_RESPONSE_FORMAT` => body response doesn't match with the provided schema +* `PLT_CLIENT_UNEXPECTED_CALL_FAILURE` => there has been an unexpected failure when doing the client request diff --git a/docs/getting-started/quick-start-guide.md b/docs/getting-started/quick-start-guide.md index f97ddd21d8..471f865132 100644 --- a/docs/getting-started/quick-start-guide.md +++ b/docs/getting-started/quick-start-guide.md @@ -234,7 +234,7 @@ Done. Now run: ### Setting Up the Platformatic Frontend Client -To kickstart the project, you'll first need to create a [Platformatic frontend client](https://docs.platformatic.dev/docs/client/frontend) for your remote server. Run the following command: +To kickstart the project, in your `web/frontend/src` directory, run the command to create a [Platformatic frontend client](https://docs.platformatic.dev/docs/client/frontend) for your remote server: ```sh npx platformatic client --frontend http://0.0.0.0:3042 --name next-client web/frontend/src @@ -442,6 +442,33 @@ function App() { export default App; ``` +#### Add frontend to Composer + +In your `web/composer` directory, add the frontend `id` to your composer `platformatic.json` file, update it as shown below: + +```json +{ + "$schema": "https://schemas.platformatic.dev/@platformatic/composer/2.5.5.json", + "composer": { + "services": [ + { + "id": "db", + "openapi": { + "url": "/documentation/json" + } + }, + { + "id": "frontend" + } + ], + "refreshTimeout": 1000 + }, + + + "watch": true +} +``` + ### Start Your API Server In your project directory, use the Platformatic CLI to start your API server: diff --git a/docs/guides/add-custom-functionality/overview.md b/docs/guides/add-custom-functionality/overview.md index 8829dd293a..fe11224f28 100644 --- a/docs/guides/add-custom-functionality/overview.md +++ b/docs/guides/add-custom-functionality/overview.md @@ -4,7 +4,6 @@ label: Welcome to Platformatic --- - # Add Custom Functionality If you want to extend Platformatic DB features, it is possible to register a plugin, which will be in the form of a standard [Fastify](https://fastify.io) plugin. diff --git a/docs/guides/generate-frontend-code-to-consume-platformatic-rest-api.md b/docs/guides/generate-frontend-code-to-consume-platformatic-rest-api.md index f9c7cd73bc..e60da18ef7 100644 --- a/docs/guides/generate-frontend-code-to-consume-platformatic-rest-api.md +++ b/docs/guides/generate-frontend-code-to-consume-platformatic-rest-api.md @@ -1,83 +1,56 @@ import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import NewApiProjectInstructions from '../getting-started/new-api-project-instructions.md'; +import SetupWatt from '../getting-started/setup-watt.md'; -# Generate Front-end Code to Consume Platformatic REST API +# Build Front-end for Platformatic REST API -By default, a Platformatic app exposes REST API that provide CRUD (Create, Read, +Platformatic apps expose REST APIs that provide provide CRUD (Create, Read, Update, Delete) functionality for each entity (see the [Introduction to the REST API](https://docs.platformatic.dev/docs/reference/sql-openapi/introduction) -documentation for more information on the REST API). +documentation for more information on the REST API) by default. -Platformatic CLI allows to auto-generate the front-end code to import in your -front-end application to consume the Platformatic REST API. +In this guide, you will learn how to create a new Platformatic guide with Watt, Frontend Client, add a frontend to consume your Platformatic REST API. -This guide -* Explains how to create a new Platformatic app. -* Explains how to configure the new Platformatic app. -* Explains how to create a new React or Vue.js front-end application. -* Explains how to generate the front-end TypeScript code to consume the Platformatic app REST API. -* Provide some React and Vue.js components (either of them written in TypeScript) that read, create, and update an entity. -* Explains how to import the new component in your front-end application. +## Create a Watt Application + -## Create a new Platformatic app +### Add a Platformatic DB service - + -## Configure the new Platformatic app -Every Platformatic app uses the "Movie" demo entity and includes -the corresponding table, migrations, and REST API to create, read, update, and delete movies. +### Add a new Platformatic service -Once the new Platformatic app is ready: +Every Platformatic service uses the "Movie" demo entity and includes the corresponding table, migrations, and REST API to create, read, update, and delete movies. -* Define a `PLT_SERVER_CORS_ORIGIN` env variable as a valid regexp (f.e. `"^http://localhost.*"` or `"^https://your.awesome.service/*"`) -* Pass it to `platformatic.db.json` +Launch your application with the command below: -```diff -{ - "$schema": "https://schemas.platformatic.dev/@platformatic/db/1.52.0.json", - "server": { - "hostname": "{PLT_SERVER_HOSTNAME}", - "port": "{PORT}", - "logger": { - "level": "{PLT_SERVER_LOGGER_LEVEL}" - }, -+ "cors": { -+ "origin": { -+ "regexp": "{PLT_SERVER_CORS_ORIGIN}" -+ } -+ } - }, - ... -} +```sh +npm run dev ``` - You can find more details about the cors configuration [here](https://docs.platformatic.dev/docs/guides/generate-frontend-code-to-consume-platformatic-rest-api). - -* launch Platformatic through `npm start`. -Then, the Platformatic app should be available at the `http://127.0.0.1:3042/` URL. +Your Platformatic app should be at the `http://127.0.0.1:3042/` URL. -## Create a new Front-end Application +## Create a Front-end Application -Refer to the [Scaffolding Your First Vite Project](https://vitejs.dev/guide/#scaffolding-your-first-vite-project) -documentation to create a new front-end application, and call it "rest-api-frontend". +Refer to the [Scaffolding Your First Vite Project](https://vitejs.dev/guide/#scaffolding-your-first-vite-project) documentation to create a new front-end application, and call it "rest-api-frontend". :::info -Please note Vite is suggested only for practical reasons, but the bundler of choice does not make any difference. +Please note Vite is suggested only for practical reasons, Platformatic Watt supports Astro, Remix, Next.js and Vite frameworks. ::: -If you are using npm 7+ you should run +In the `web` directory of your application, run the command: ```bash -npm create vite@latest rest-api-frontend -- --template react-ts +npm create vite@latest rest-api-frontend -- --template react ``` @@ -102,325 +75,242 @@ Done. Now run: npm run dev ``` -Once done, the front-end application is available at `http://localhost:5174/`. +Once done, run the command below to add `watt.json` file to your frontend application: -## Generate the front-end code to consume the Platformatic app REST API - -Now that either the Platformatic app and the front-end app are running, go to the front-end codebase and run the Platformatic CLI - -```bash -cd rest-api-frontend/src -npx platformatic client http://127.0.0.1:3042 --frontend --language ts +```sh +npx wattpm import web/frontend ``` -Refer to the [Platformatic CLI frontend command](https://docs.platformatic.dev/docs/reference/cli#frontend) -documentation to know about the available options. - -The Platformatic CLI generates +Add your frontend `id` and DB service to your `platformatic.json` file in your `web/composer` application: - * `api.d.ts`: A TypeScript module that includes all the OpenAPI-related types. -Here is part of the generated code - -```ts -interface GetMoviesRequest { - 'limit'?: number; - 'offset'?: number; - // ... etc. -} - -interface GetMoviesResponseOK { - 'id'?: number; - 'title': string; -} - - -// ... etc. - -export interface Api { - setBaseUrl(baseUrl: string): void; - setDefaultHeaders(headers: Object): void; - getMovies(req: GetMoviesRequest): Promise>; - createMovie(req: CreateMovieRequest): Promise; - // ... etc. +```json +{ + "$schema": "https://schemas.platformatic.dev/@platformatic/composer/2.15.0.json", + "composer": { + "services": [ + { + "id": "db", + "openapi": { + "url": "/documentation/json", + "prefix": "/db" + } + }, + { + "id":"frontend" // Frontend ID for Vite applications + } + ], + "refreshTimeout": 1000 + }, + "watch": true } ``` - * `api.ts`: A TypeScript module that includes a typed function for every single OpenAPI endpoint. -Here is part of the generated code - -```ts -import type { Api } from './api-types' - -let baseUrl = '' -let defaultHeaders = {} -export const setBaseUrl = (newUrl: string) { baseUrl = newUrl }; +### Add a Frontend Client for REST API -export const setDefaultHeaders = (headers: Object): void => { defaultHeaders = headers } - -export const createMovie: Api['createMovie'] = async (request) => { - const response = await fetch(`${baseUrl}/movies/`, { - method:'post', - body: JSON.stringify(request), - headers: { - 'Content-Type': 'application/json' - } - }) - - if (!response.ok) { - throw new Error(await response.text()) - } - - return await response.json() -} - -// etc. - -``` - -You can add a `--name` option to the command line to provide a custom name for the generated files. +To consume REST APIs in your Platformatic application. run the command to use Platformatic [frontend client](https://docs.platformatic.dev/docs/client/frontend) for exposing a client for your remote OpenAPI server, the client uses fetch and runs on the browser. ```bash cd rest-api-frontend/src -npx platformatic client http://127.0.0.1:3042 --frontend --name foobar --language ts +npx platformatic client http://127.0.0.1:3042 --frontend --name frontend-client ``` -This will generate `foobar.ts` and `foobar-types.d.ts` +Refer to the [Platformatic CLI frontend command](https://docs.platformatic.dev/docs/reference/cli#frontend) documentation to know about the available options. +The Platformatic CLI will generate `frontend-client.mjs`, `frontend-client-types.d.ts`, `frontend-client.openapi.json`. Refer to the [frontend client documentation](https://docs.platformatic.dev/docs/client/frontend) to learn more about the [Client](https://docs.platformatic.dev/docs/client/frontend) and [CLI](https://docs.platformatic.dev/docs/cli). -## React and Vue.js components that read, create, and update an entity -You can copy/paste the following React or Vue.js components that import the code -the Platformatic CLI generated. +### React component for CRUD operations - - +In this section, you’ll build a React component for CRUD operations using the autogenerated client code provided by Platformatic. The code showcases a `MovieManager.jsx` file that manages movies in a database. You will implement features to create, read, update, and delete movies. -Create a new file `src/PlatformaticPlayground.tsx` and copy/paste the following code. -```tsx -import { useEffect, useState } from 'react' +```js +import { useState, useEffect } from 'react'; +import { setBaseUrl, dbGetMovies, dbCreateMovie, dbUpdateMovie, dbDeleteMovies } from './frontend-client/frontend-client.mjs'; -// getMovies, createMovie, and updateMovie are all functions automatically generated by Platformatic -// in the `api.ts` module. -import { - getMovies, - createMovie, - updateMovie, - setBaseUrl, - type GetMoviesResponseOK, - type CreateMovieResponseOK -} from './api' +// Set the base URL for the API client +setBaseUrl(window.location.origin); // Or your specific API base URL -setBaseUrl('http://127.0.0.1:3042') // configure this according to your needs - -export function PlatformaticPlayground() { - const [movies, setMovies] = useState([]) - const [newMovie, setNewMovie] = useState() - - async function onCreateMovie() { - const newMovie = await createMovie({ title: 'Harry Potter' }) - setNewMovie(newMovie) - } - - async function onUpdateMovie() { - if (!newMovie || !newMovie.id) return - - const updatedMovie = await updateMovie({ id: newMovie.id, title: 'The Lord of the Rings' }) - setNewMovie(updatedMovie) - } +export default function MovieManager() { + const [movies, setMovies] = useState([]); + const [newMovie, setNewMovie] = useState({ title: '' }); + const [editMovie, setEditMovie] = useState(null); + const [showEditModal, setShowEditModal] = useState(false); useEffect(() => { - async function fetchMovies() { - const movies = await getMovies({}) - setMovies(movies) + fetchMovies(); + }, []); + + const fetchMovies = async () => { + try { + const response = await dbGetMovies({}); + setMovies(response); + } catch (error) { + console.error('Error fetching movies:', error); } - - fetchMovies() - }, []) + }; + + const handleCreateMovie = async (e) => { + e.preventDefault(); + try { + await dbCreateMovie(newMovie); + setNewMovie({ title: '' }); + fetchMovies(); + } catch (error) { + console.error('Error creating movie:', error); + } + }; + + const handleEditMovie = async (e) => { + e.preventDefault(); + try { + await dbUpdateMovie(editMovie); + setShowEditModal(false); + setEditMovie(null); + fetchMovies(); + } catch (error) { + console.error('Error updating movie:', error); + } + }; + + const handleDeleteMovie = async (id) => { + try { + await dbDeleteMovies({ id }); + fetchMovies(); + } catch (error) { + console.error('Error deleting movie:', error); + } + }; return ( - <> -

Movies

- - {movies.length === 0 ? ( -
No movies yet
- ) : ( -
    - {movies.map((movie) => ( -
  • {movie.title}
  • - ))} -
- )} - - - - - {newMovie &&
Title: {newMovie.title}
} - - ) -} -``` - -
- - -Create a new file `src/PlatformaticPlayground.vue` and copy/paste the following code. - -```vue - - - ``` - -
- -## Import the new component in your front-end application - -You need to import and render the new component in the front-end application. +This component handles all the CRUD operations for managing movies by interacting with the autogenerated client functions (`dbGetMovies`, `dbCreateMovie`, etc.) from your Platformatic API. - - +#### Rendering in App.jsx -Change the App.tsx as follows +To include this component in your app, import it into your `App.jsx` file: -```diff -import { useState } from 'react' -import reactLogo from './assets/react.svg' -import viteLogo from '/vite.svg' +```js +import MovieManager from './MovieManager'; import './App.css' -+import { PlatformaticPlayground } from './PlatformaticPlayground' - function App() { - const [count, setCount] = useState(0) - return ( - <> -+ - -

Vite + React

-
- -

- Edit src/App.tsx and save to test HMR -

-
-

Click on the Vite and React logos to learn more

- - ) +
+ +
+ ); } -export default App +export default App; ``` -
- +The styling for the `MovieManager.jsx` file uses Tailwind CSS. See the [tailwind documentation](https://tailwindcss.com/docs/installation) on how to install and set it up. -Change the App.vue as follows - -```diff - - - - - -``` - - -
- -## Have fun +### Start your Server -Art the top of the front-end application the new component requests the movies to the Platformatic app and list them. +In the root of your project directory, run the command: -![Platformatic frontend guide: listing the movies](./images/frontend-screenshot-1.jpg) - -Click on "Create movie" to create a new movie called "Harry Potter". - -![Platformatic frontend guide: creating a movie](./images/frontend-screenshot-2.jpg) - -Click on "Update movie" to rename "Harry Potter" into "Lord of the Rings". - -![Platformatic frontend guide: editing a movie](./images/frontend-screenshot-3.jpg) +```sh +npm run dev +``` -Reload the front-end application to see the new "Lord of the Rings" movie listed. +Your application is now up and running on `http://127.0.0.1:3042/frontend` -![Platformatic frontend guide: listing the movies](./images/frontend-screenshot-4.jpg) -. +![Platformatic CRUD movie application](./images/movie-app.png) \ No newline at end of file diff --git a/docs/guides/images/frontend-screenshot-1.jpg b/docs/guides/images/frontend-screenshot-1.jpg deleted file mode 100644 index 345b7be85c..0000000000 Binary files a/docs/guides/images/frontend-screenshot-1.jpg and /dev/null differ diff --git a/docs/guides/images/frontend-screenshot-2.jpg b/docs/guides/images/frontend-screenshot-2.jpg deleted file mode 100644 index be7ec8c6d0..0000000000 Binary files a/docs/guides/images/frontend-screenshot-2.jpg and /dev/null differ diff --git a/docs/guides/images/frontend-screenshot-3.jpg b/docs/guides/images/frontend-screenshot-3.jpg deleted file mode 100644 index 1774ffadf7..0000000000 Binary files a/docs/guides/images/frontend-screenshot-3.jpg and /dev/null differ diff --git a/docs/guides/images/frontend-screenshot-4.jpg b/docs/guides/images/frontend-screenshot-4.jpg deleted file mode 100644 index 264c18ea46..0000000000 Binary files a/docs/guides/images/frontend-screenshot-4.jpg and /dev/null differ diff --git a/docs/guides/images/movie-app.png b/docs/guides/images/movie-app.png new file mode 100644 index 0000000000..5c461fd011 Binary files /dev/null and b/docs/guides/images/movie-app.png differ diff --git a/versioned_docs/version-2.15.0/guides/generate-frontend-code-to-consume-platformatic-rest-api.md b/versioned_docs/version-2.15.0/guides/generate-frontend-code-to-consume-platformatic-rest-api.md deleted file mode 100644 index f9c7cd73bc..0000000000 --- a/versioned_docs/version-2.15.0/guides/generate-frontend-code-to-consume-platformatic-rest-api.md +++ /dev/null @@ -1,426 +0,0 @@ -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; -import NewApiProjectInstructions from '../getting-started/new-api-project-instructions.md'; - -# Generate Front-end Code to Consume Platformatic REST API - -By default, a Platformatic app exposes REST API that provide CRUD (Create, Read, -Update, Delete) functionality for each entity (see the -[Introduction to the REST API](https://docs.platformatic.dev/docs/reference/sql-openapi/introduction) -documentation for more information on the REST API). - -Platformatic CLI allows to auto-generate the front-end code to import in your -front-end application to consume the Platformatic REST API. - -This guide -* Explains how to create a new Platformatic app. -* Explains how to configure the new Platformatic app. -* Explains how to create a new React or Vue.js front-end application. -* Explains how to generate the front-end TypeScript code to consume the Platformatic app REST API. -* Provide some React and Vue.js components (either of them written in TypeScript) that read, create, and update an entity. -* Explains how to import the new component in your front-end application. - - -## Create a new Platformatic app - - - - - -## Configure the new Platformatic app - -Every Platformatic app uses the "Movie" demo entity and includes -the corresponding table, migrations, and REST API to create, read, update, and delete movies. - -Once the new Platformatic app is ready: - -* Define a `PLT_SERVER_CORS_ORIGIN` env variable as a valid regexp (f.e. `"^http://localhost.*"` or `"^https://your.awesome.service/*"`) -* Pass it to `platformatic.db.json` - -```diff -{ - "$schema": "https://schemas.platformatic.dev/@platformatic/db/1.52.0.json", - "server": { - "hostname": "{PLT_SERVER_HOSTNAME}", - "port": "{PORT}", - "logger": { - "level": "{PLT_SERVER_LOGGER_LEVEL}" - }, -+ "cors": { -+ "origin": { -+ "regexp": "{PLT_SERVER_CORS_ORIGIN}" -+ } -+ } - }, - ... -} -``` - - You can find more details about the cors configuration [here](https://docs.platformatic.dev/docs/guides/generate-frontend-code-to-consume-platformatic-rest-api). - -* launch Platformatic through `npm start`. -Then, the Platformatic app should be available at the `http://127.0.0.1:3042/` URL. - -## Create a new Front-end Application - -Refer to the [Scaffolding Your First Vite Project](https://vitejs.dev/guide/#scaffolding-your-first-vite-project) -documentation to create a new front-end application, and call it "rest-api-frontend". - -:::info -Please note Vite is suggested only for practical reasons, but the bundler of choice does not make any difference. -::: - -If you are using npm 7+ you should run - - - - - -```bash -npm create vite@latest rest-api-frontend -- --template react-ts -``` - - - - -```bash -npm create vite@latest rest-api-frontend -- --template vue-ts -``` - - - - -and then follow the Vite's instructions - -```bash -Scaffolding project in /Users/noriste/Sites/temp/platformatic/rest-api-frontend... - -Done. Now run: - - cd rest-api-frontend - npm install - npm run dev -``` - -Once done, the front-end application is available at `http://localhost:5174/`. - -## Generate the front-end code to consume the Platformatic app REST API - -Now that either the Platformatic app and the front-end app are running, go to the front-end codebase and run the Platformatic CLI - -```bash -cd rest-api-frontend/src -npx platformatic client http://127.0.0.1:3042 --frontend --language ts -``` - -Refer to the [Platformatic CLI frontend command](https://docs.platformatic.dev/docs/reference/cli#frontend) -documentation to know about the available options. - -The Platformatic CLI generates - - * `api.d.ts`: A TypeScript module that includes all the OpenAPI-related types. -Here is part of the generated code - -```ts -interface GetMoviesRequest { - 'limit'?: number; - 'offset'?: number; - // ... etc. -} - -interface GetMoviesResponseOK { - 'id'?: number; - 'title': string; -} - - -// ... etc. - -export interface Api { - setBaseUrl(baseUrl: string): void; - setDefaultHeaders(headers: Object): void; - getMovies(req: GetMoviesRequest): Promise>; - createMovie(req: CreateMovieRequest): Promise; - // ... etc. -} -``` - - * `api.ts`: A TypeScript module that includes a typed function for every single OpenAPI endpoint. -Here is part of the generated code - -```ts -import type { Api } from './api-types' - -let baseUrl = '' -let defaultHeaders = {} - -export const setBaseUrl = (newUrl: string) { baseUrl = newUrl }; - -export const setDefaultHeaders = (headers: Object): void => { defaultHeaders = headers } - -export const createMovie: Api['createMovie'] = async (request) => { - const response = await fetch(`${baseUrl}/movies/`, { - method:'post', - body: JSON.stringify(request), - headers: { - 'Content-Type': 'application/json' - } - }) - - if (!response.ok) { - throw new Error(await response.text()) - } - - return await response.json() -} - -// etc. - -``` - -You can add a `--name` option to the command line to provide a custom name for the generated files. - -```bash -cd rest-api-frontend/src -npx platformatic client http://127.0.0.1:3042 --frontend --name foobar --language ts -``` - -This will generate `foobar.ts` and `foobar-types.d.ts` - - -## React and Vue.js components that read, create, and update an entity - -You can copy/paste the following React or Vue.js components that import the code -the Platformatic CLI generated. - - - - -Create a new file `src/PlatformaticPlayground.tsx` and copy/paste the following code. - -```tsx -import { useEffect, useState } from 'react' - -// getMovies, createMovie, and updateMovie are all functions automatically generated by Platformatic -// in the `api.ts` module. -import { - getMovies, - createMovie, - updateMovie, - setBaseUrl, - type GetMoviesResponseOK, - type CreateMovieResponseOK -} from './api' - -setBaseUrl('http://127.0.0.1:3042') // configure this according to your needs - -export function PlatformaticPlayground() { - const [movies, setMovies] = useState([]) - const [newMovie, setNewMovie] = useState() - - async function onCreateMovie() { - const newMovie = await createMovie({ title: 'Harry Potter' }) - setNewMovie(newMovie) - } - - async function onUpdateMovie() { - if (!newMovie || !newMovie.id) return - - const updatedMovie = await updateMovie({ id: newMovie.id, title: 'The Lord of the Rings' }) - setNewMovie(updatedMovie) - } - - useEffect(() => { - async function fetchMovies() { - const movies = await getMovies({}) - setMovies(movies) - } - - fetchMovies() - }, []) - - return ( - <> -

Movies

- - {movies.length === 0 ? ( -
No movies yet
- ) : ( -
    - {movies.map((movie) => ( -
  • {movie.title}
  • - ))} -
- )} - - - - - {newMovie &&
Title: {newMovie.title}
} - - ) -} -``` - -
- - -Create a new file `src/PlatformaticPlayground.vue` and copy/paste the following code. - -```vue - - - -``` - - -
- -## Import the new component in your front-end application - -You need to import and render the new component in the front-end application. - - - - -Change the App.tsx as follows - -```diff -import { useState } from 'react' -import reactLogo from './assets/react.svg' -import viteLogo from '/vite.svg' -import './App.css' - -+import { PlatformaticPlayground } from './PlatformaticPlayground' - -function App() { - const [count, setCount] = useState(0) - - return ( - <> -+ - -

Vite + React

-
- -

- Edit src/App.tsx and save to test HMR -

-
-

Click on the Vite and React logos to learn more

- - ) -} - -export default App -``` - -
- - -Change the App.vue as follows - -```diff - - - - - -``` - - -
- -## Have fun - -Art the top of the front-end application the new component requests the movies to the Platformatic app and list them. - -![Platformatic frontend guide: listing the movies](./images/frontend-screenshot-1.jpg) - -Click on "Create movie" to create a new movie called "Harry Potter". - -![Platformatic frontend guide: creating a movie](./images/frontend-screenshot-2.jpg) - -Click on "Update movie" to rename "Harry Potter" into "Lord of the Rings". - -![Platformatic frontend guide: editing a movie](./images/frontend-screenshot-3.jpg) - -Reload the front-end application to see the new "Lord of the Rings" movie listed. - -![Platformatic frontend guide: listing the movies](./images/frontend-screenshot-4.jpg) -. diff --git a/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-1.jpg b/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-1.jpg deleted file mode 100644 index 345b7be85c..0000000000 Binary files a/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-1.jpg and /dev/null differ diff --git a/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-2.jpg b/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-2.jpg deleted file mode 100644 index be7ec8c6d0..0000000000 Binary files a/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-2.jpg and /dev/null differ diff --git a/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-3.jpg b/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-3.jpg deleted file mode 100644 index 1774ffadf7..0000000000 Binary files a/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-3.jpg and /dev/null differ diff --git a/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-4.jpg b/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-4.jpg deleted file mode 100644 index 264c18ea46..0000000000 Binary files a/versioned_docs/version-2.15.0/guides/images/frontend-screenshot-4.jpg and /dev/null differ diff --git a/versioned_docs/version-2.15.0/FAQs.md b/versioned_docs/version-2.16.0/FAQs.md similarity index 100% rename from versioned_docs/version-2.15.0/FAQs.md rename to versioned_docs/version-2.16.0/FAQs.md diff --git a/versioned_docs/version-2.15.0/Overview.md b/versioned_docs/version-2.16.0/Overview.md similarity index 100% rename from versioned_docs/version-2.15.0/Overview.md rename to versioned_docs/version-2.16.0/Overview.md diff --git a/versioned_docs/version-2.15.0/cli.md b/versioned_docs/version-2.16.0/cli.md similarity index 100% rename from versioned_docs/version-2.15.0/cli.md rename to versioned_docs/version-2.16.0/cli.md diff --git a/versioned_docs/version-2.15.0/client/frontend.md b/versioned_docs/version-2.16.0/client/frontend.md similarity index 100% rename from versioned_docs/version-2.15.0/client/frontend.md rename to versioned_docs/version-2.16.0/client/frontend.md diff --git a/versioned_docs/version-2.15.0/client/overview.md b/versioned_docs/version-2.16.0/client/overview.md similarity index 90% rename from versioned_docs/version-2.15.0/client/overview.md rename to versioned_docs/version-2.16.0/client/overview.md index b6eda46652..151a214367 100644 --- a/versioned_docs/version-2.15.0/client/overview.md +++ b/versioned_docs/version-2.16.0/client/overview.md @@ -351,3 +351,15 @@ fastify.post('/', async (request, reply) => { return res }) ``` + +## Errors in Platformatic Client + +Platformatic Client throws the following errors when an unexpected situation occurs: +* `PLT_CLIENT_OPTIONS_URL_REQUIRED` => in your client options, you should provide a valid `url` +* `PLT_CLIENT_FORM_DATA_REQUIRED` => you should pass a `FormData` object (from `undici` request) since you're doing a `multipart/form-data` request +* `PLT_CLIENT_MISSING_PARAMS_REQUIRED` => a url path params is missing (and should be added) when doing the client request +* `PLT_CLIENT_WRONG_OPTS_TYPE` => a wrong client option type has been passed (and should be properly updated) +* `PLT_CLIENT_INVALID_RESPONSE_SCHEMA` => response can't be properly validated due to missing status code +* `PLT_CLIENT_INVALID_CONTENT_TYPE` => response contains an invalid content type +* `PLT_CLIENT_INVALID_RESPONSE_FORMAT` => body response doesn't match with the provided schema +* `PLT_CLIENT_UNEXPECTED_CALL_FAILURE` => there has been an unexpected failure when doing the client request diff --git a/versioned_docs/version-2.15.0/client/programmatic.md b/versioned_docs/version-2.16.0/client/programmatic.md similarity index 100% rename from versioned_docs/version-2.15.0/client/programmatic.md rename to versioned_docs/version-2.16.0/client/programmatic.md diff --git a/versioned_docs/version-2.15.0/composer/api-modification.md b/versioned_docs/version-2.16.0/composer/api-modification.md similarity index 100% rename from versioned_docs/version-2.15.0/composer/api-modification.md rename to versioned_docs/version-2.16.0/composer/api-modification.md diff --git a/versioned_docs/version-2.15.0/composer/configuration.md b/versioned_docs/version-2.16.0/composer/configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/composer/configuration.md rename to versioned_docs/version-2.16.0/composer/configuration.md diff --git a/versioned_docs/version-2.15.0/composer/overview.md b/versioned_docs/version-2.16.0/composer/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/composer/overview.md rename to versioned_docs/version-2.16.0/composer/overview.md diff --git a/versioned_docs/version-2.15.0/composer/plugin.md b/versioned_docs/version-2.16.0/composer/plugin.md similarity index 100% rename from versioned_docs/version-2.15.0/composer/plugin.md rename to versioned_docs/version-2.16.0/composer/plugin.md diff --git a/versioned_docs/version-2.15.0/composer/programmatic.md b/versioned_docs/version-2.16.0/composer/programmatic.md similarity index 100% rename from versioned_docs/version-2.15.0/composer/programmatic.md rename to versioned_docs/version-2.16.0/composer/programmatic.md diff --git a/versioned_docs/version-2.15.0/contributing/contributing.md b/versioned_docs/version-2.16.0/contributing/contributing.md similarity index 100% rename from versioned_docs/version-2.15.0/contributing/contributing.md rename to versioned_docs/version-2.16.0/contributing/contributing.md diff --git a/versioned_docs/version-2.15.0/contributing/documentation-style-guide.md b/versioned_docs/version-2.16.0/contributing/documentation-style-guide.md similarity index 100% rename from versioned_docs/version-2.15.0/contributing/documentation-style-guide.md rename to versioned_docs/version-2.16.0/contributing/documentation-style-guide.md diff --git a/versioned_docs/version-2.15.0/db/authorization/images/http.png b/versioned_docs/version-2.16.0/db/authorization/images/http.png similarity index 100% rename from versioned_docs/version-2.15.0/db/authorization/images/http.png rename to versioned_docs/version-2.16.0/db/authorization/images/http.png diff --git a/versioned_docs/version-2.15.0/db/authorization/images/jwt.png b/versioned_docs/version-2.16.0/db/authorization/images/jwt.png similarity index 100% rename from versioned_docs/version-2.15.0/db/authorization/images/jwt.png rename to versioned_docs/version-2.16.0/db/authorization/images/jwt.png diff --git a/versioned_docs/version-2.15.0/db/authorization/images/sources/http.excalidraw b/versioned_docs/version-2.16.0/db/authorization/images/sources/http.excalidraw similarity index 100% rename from versioned_docs/version-2.15.0/db/authorization/images/sources/http.excalidraw rename to versioned_docs/version-2.16.0/db/authorization/images/sources/http.excalidraw diff --git a/versioned_docs/version-2.15.0/db/authorization/images/sources/jwt.excalidraw b/versioned_docs/version-2.16.0/db/authorization/images/sources/jwt.excalidraw similarity index 100% rename from versioned_docs/version-2.15.0/db/authorization/images/sources/jwt.excalidraw rename to versioned_docs/version-2.16.0/db/authorization/images/sources/jwt.excalidraw diff --git a/versioned_docs/version-2.15.0/db/authorization/images/sources/webhook.excalidraw b/versioned_docs/version-2.16.0/db/authorization/images/sources/webhook.excalidraw similarity index 100% rename from versioned_docs/version-2.15.0/db/authorization/images/sources/webhook.excalidraw rename to versioned_docs/version-2.16.0/db/authorization/images/sources/webhook.excalidraw diff --git a/versioned_docs/version-2.15.0/db/authorization/images/webhook.png b/versioned_docs/version-2.16.0/db/authorization/images/webhook.png similarity index 100% rename from versioned_docs/version-2.15.0/db/authorization/images/webhook.png rename to versioned_docs/version-2.16.0/db/authorization/images/webhook.png diff --git a/versioned_docs/version-2.15.0/db/authorization/overview.md b/versioned_docs/version-2.16.0/db/authorization/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/db/authorization/overview.md rename to versioned_docs/version-2.16.0/db/authorization/overview.md diff --git a/versioned_docs/version-2.15.0/db/authorization/rules.md b/versioned_docs/version-2.16.0/db/authorization/rules.md similarity index 100% rename from versioned_docs/version-2.15.0/db/authorization/rules.md rename to versioned_docs/version-2.16.0/db/authorization/rules.md diff --git a/versioned_docs/version-2.15.0/db/authorization/strategies.md b/versioned_docs/version-2.16.0/db/authorization/strategies.md similarity index 100% rename from versioned_docs/version-2.15.0/db/authorization/strategies.md rename to versioned_docs/version-2.16.0/db/authorization/strategies.md diff --git a/versioned_docs/version-2.15.0/db/authorization/user-roles-metadata.md b/versioned_docs/version-2.16.0/db/authorization/user-roles-metadata.md similarity index 100% rename from versioned_docs/version-2.15.0/db/authorization/user-roles-metadata.md rename to versioned_docs/version-2.16.0/db/authorization/user-roles-metadata.md diff --git a/versioned_docs/version-2.15.0/db/configuration.md b/versioned_docs/version-2.16.0/db/configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/db/configuration.md rename to versioned_docs/version-2.16.0/db/configuration.md diff --git a/versioned_docs/version-2.15.0/db/logging.md b/versioned_docs/version-2.16.0/db/logging.md similarity index 100% rename from versioned_docs/version-2.15.0/db/logging.md rename to versioned_docs/version-2.16.0/db/logging.md diff --git a/versioned_docs/version-2.15.0/db/migrations.md b/versioned_docs/version-2.16.0/db/migrations.md similarity index 100% rename from versioned_docs/version-2.15.0/db/migrations.md rename to versioned_docs/version-2.16.0/db/migrations.md diff --git a/versioned_docs/version-2.15.0/db/overview.md b/versioned_docs/version-2.16.0/db/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/db/overview.md rename to versioned_docs/version-2.16.0/db/overview.md diff --git a/versioned_docs/version-2.15.0/db/plugin.md b/versioned_docs/version-2.16.0/db/plugin.md similarity index 100% rename from versioned_docs/version-2.15.0/db/plugin.md rename to versioned_docs/version-2.16.0/db/plugin.md diff --git a/versioned_docs/version-2.15.0/db/programmatic.md b/versioned_docs/version-2.16.0/db/programmatic.md similarity index 100% rename from versioned_docs/version-2.15.0/db/programmatic.md rename to versioned_docs/version-2.16.0/db/programmatic.md diff --git a/versioned_docs/version-2.15.0/db/schema-support.md b/versioned_docs/version-2.16.0/db/schema-support.md similarity index 100% rename from versioned_docs/version-2.15.0/db/schema-support.md rename to versioned_docs/version-2.16.0/db/schema-support.md diff --git a/versioned_docs/version-2.15.0/file-formats.md b/versioned_docs/version-2.16.0/file-formats.md similarity index 100% rename from versioned_docs/version-2.15.0/file-formats.md rename to versioned_docs/version-2.16.0/file-formats.md diff --git a/versioned_docs/version-2.15.0/getting-started/images/inspector.png b/versioned_docs/version-2.16.0/getting-started/images/inspector.png similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/images/inspector.png rename to versioned_docs/version-2.16.0/getting-started/images/inspector.png diff --git a/versioned_docs/version-2.15.0/getting-started/images/movie_quote_app.png b/versioned_docs/version-2.16.0/getting-started/images/movie_quote_app.png similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/images/movie_quote_app.png rename to versioned_docs/version-2.16.0/getting-started/images/movie_quote_app.png diff --git a/versioned_docs/version-2.15.0/getting-started/images/vs-code-debug.png b/versioned_docs/version-2.16.0/getting-started/images/vs-code-debug.png similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/images/vs-code-debug.png rename to versioned_docs/version-2.16.0/getting-started/images/vs-code-debug.png diff --git a/versioned_docs/version-2.15.0/getting-started/issues.md b/versioned_docs/version-2.16.0/getting-started/issues.md similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/issues.md rename to versioned_docs/version-2.16.0/getting-started/issues.md diff --git a/versioned_docs/version-2.15.0/getting-started/new-api-project-instructions.md b/versioned_docs/version-2.16.0/getting-started/new-api-project-instructions.md similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/new-api-project-instructions.md rename to versioned_docs/version-2.16.0/getting-started/new-api-project-instructions.md diff --git a/versioned_docs/version-2.15.0/getting-started/platformatic-architecture.png b/versioned_docs/version-2.16.0/getting-started/platformatic-architecture.png similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/platformatic-architecture.png rename to versioned_docs/version-2.16.0/getting-started/platformatic-architecture.png diff --git a/versioned_docs/version-2.15.0/getting-started/platformatic-composer-architecture.png b/versioned_docs/version-2.16.0/getting-started/platformatic-composer-architecture.png similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/platformatic-composer-architecture.png rename to versioned_docs/version-2.16.0/getting-started/platformatic-composer-architecture.png diff --git a/versioned_docs/version-2.15.0/getting-started/platformatic-db-architecture.png b/versioned_docs/version-2.16.0/getting-started/platformatic-db-architecture.png similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/platformatic-db-architecture.png rename to versioned_docs/version-2.16.0/getting-started/platformatic-db-architecture.png diff --git a/versioned_docs/version-2.15.0/getting-started/platformatic-runtime-architecture.png b/versioned_docs/version-2.16.0/getting-started/platformatic-runtime-architecture.png similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/platformatic-runtime-architecture.png rename to versioned_docs/version-2.16.0/getting-started/platformatic-runtime-architecture.png diff --git a/versioned_docs/version-2.15.0/getting-started/platformatic-stackables-architecture.png b/versioned_docs/version-2.16.0/getting-started/platformatic-stackables-architecture.png similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/platformatic-stackables-architecture.png rename to versioned_docs/version-2.16.0/getting-started/platformatic-stackables-architecture.png diff --git a/versioned_docs/version-2.15.0/getting-started/platformatid-composer-architecture.excalidraw b/versioned_docs/version-2.16.0/getting-started/platformatid-composer-architecture.excalidraw similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/platformatid-composer-architecture.excalidraw rename to versioned_docs/version-2.16.0/getting-started/platformatid-composer-architecture.excalidraw diff --git a/versioned_docs/version-2.15.0/getting-started/platformatid-db-architecture.excalidraw b/versioned_docs/version-2.16.0/getting-started/platformatid-db-architecture.excalidraw similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/platformatid-db-architecture.excalidraw rename to versioned_docs/version-2.16.0/getting-started/platformatid-db-architecture.excalidraw diff --git a/versioned_docs/version-2.15.0/getting-started/platformatid-runtime-architecture.excalidraw b/versioned_docs/version-2.16.0/getting-started/platformatid-runtime-architecture.excalidraw similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/platformatid-runtime-architecture.excalidraw rename to versioned_docs/version-2.16.0/getting-started/platformatid-runtime-architecture.excalidraw diff --git a/versioned_docs/version-2.15.0/getting-started/platformatid-stackables-architecture.excalidraw b/versioned_docs/version-2.16.0/getting-started/platformatid-stackables-architecture.excalidraw similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/platformatid-stackables-architecture.excalidraw rename to versioned_docs/version-2.16.0/getting-started/platformatid-stackables-architecture.excalidraw diff --git a/versioned_docs/version-2.15.0/getting-started/quick-start-guide.md b/versioned_docs/version-2.16.0/getting-started/quick-start-guide.md similarity index 95% rename from versioned_docs/version-2.15.0/getting-started/quick-start-guide.md rename to versioned_docs/version-2.16.0/getting-started/quick-start-guide.md index f97ddd21d8..471f865132 100644 --- a/versioned_docs/version-2.15.0/getting-started/quick-start-guide.md +++ b/versioned_docs/version-2.16.0/getting-started/quick-start-guide.md @@ -234,7 +234,7 @@ Done. Now run: ### Setting Up the Platformatic Frontend Client -To kickstart the project, you'll first need to create a [Platformatic frontend client](https://docs.platformatic.dev/docs/client/frontend) for your remote server. Run the following command: +To kickstart the project, in your `web/frontend/src` directory, run the command to create a [Platformatic frontend client](https://docs.platformatic.dev/docs/client/frontend) for your remote server: ```sh npx platformatic client --frontend http://0.0.0.0:3042 --name next-client web/frontend/src @@ -442,6 +442,33 @@ function App() { export default App; ``` +#### Add frontend to Composer + +In your `web/composer` directory, add the frontend `id` to your composer `platformatic.json` file, update it as shown below: + +```json +{ + "$schema": "https://schemas.platformatic.dev/@platformatic/composer/2.5.5.json", + "composer": { + "services": [ + { + "id": "db", + "openapi": { + "url": "/documentation/json" + } + }, + { + "id": "frontend" + } + ], + "refreshTimeout": 1000 + }, + + + "watch": true +} +``` + ### Start Your API Server In your project directory, use the Platformatic CLI to start your API server: diff --git a/versioned_docs/version-2.15.0/getting-started/quick-start-watt.md b/versioned_docs/version-2.16.0/getting-started/quick-start-watt.md similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/quick-start-watt.md rename to versioned_docs/version-2.16.0/getting-started/quick-start-watt.md diff --git a/versioned_docs/version-2.15.0/getting-started/setup-watt.md b/versioned_docs/version-2.16.0/getting-started/setup-watt.md similarity index 100% rename from versioned_docs/version-2.15.0/getting-started/setup-watt.md rename to versioned_docs/version-2.16.0/getting-started/setup-watt.md diff --git a/versioned_docs/version-2.15.0/guides/add-custom-functionality/extend-graphql.md b/versioned_docs/version-2.16.0/guides/add-custom-functionality/extend-graphql.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/add-custom-functionality/extend-graphql.md rename to versioned_docs/version-2.16.0/guides/add-custom-functionality/extend-graphql.md diff --git a/versioned_docs/version-2.15.0/guides/add-custom-functionality/extend-rest.md b/versioned_docs/version-2.16.0/guides/add-custom-functionality/extend-rest.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/add-custom-functionality/extend-rest.md rename to versioned_docs/version-2.16.0/guides/add-custom-functionality/extend-rest.md diff --git a/versioned_docs/version-2.15.0/guides/add-custom-functionality/overview.md b/versioned_docs/version-2.16.0/guides/add-custom-functionality/overview.md similarity index 99% rename from versioned_docs/version-2.15.0/guides/add-custom-functionality/overview.md rename to versioned_docs/version-2.16.0/guides/add-custom-functionality/overview.md index 8829dd293a..fe11224f28 100644 --- a/versioned_docs/version-2.15.0/guides/add-custom-functionality/overview.md +++ b/versioned_docs/version-2.16.0/guides/add-custom-functionality/overview.md @@ -4,7 +4,6 @@ label: Welcome to Platformatic --- - # Add Custom Functionality If you want to extend Platformatic DB features, it is possible to register a plugin, which will be in the form of a standard [Fastify](https://fastify.io) plugin. diff --git a/versioned_docs/version-2.15.0/guides/add-custom-functionality/prerequisites.md b/versioned_docs/version-2.16.0/guides/add-custom-functionality/prerequisites.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/add-custom-functionality/prerequisites.md rename to versioned_docs/version-2.16.0/guides/add-custom-functionality/prerequisites.md diff --git a/versioned_docs/version-2.15.0/guides/add-custom-functionality/raw-sql.md b/versioned_docs/version-2.16.0/guides/add-custom-functionality/raw-sql.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/add-custom-functionality/raw-sql.md rename to versioned_docs/version-2.16.0/guides/add-custom-functionality/raw-sql.md diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/architecture-diagram.excalidraw b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/architecture-diagram.excalidraw similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/architecture-diagram.excalidraw rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/architecture-diagram.excalidraw diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/architecture-diagram.png b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/architecture-diagram.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/architecture-diagram.png rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/architecture-diagram.png diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/create-a-static-app-workspace-01.png b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/create-a-static-app-workspace-01.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/create-a-static-app-workspace-01.png rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/create-a-static-app-workspace-01.png diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/create-a-static-app-workspace-02.png b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/create-a-static-app-workspace-02.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/create-a-static-app-workspace-02.png rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/create-a-static-app-workspace-02.png diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/create-an-app-on-platformati-cloud-01.png b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/create-an-app-on-platformati-cloud-01.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/create-an-app-on-platformati-cloud-01.png rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/create-an-app-on-platformati-cloud-01.png diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/make-the-composed-media-service-api-read-only-01.png b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/make-the-composed-media-service-api-read-only-01.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/make-the-composed-media-service-api-read-only-01.png rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/make-the-composed-media-service-api-read-only-01.png diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/start-the-runtime-app-01.png b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/start-the-runtime-app-01.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/start-the-runtime-app-01.png rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/start-the-runtime-app-01.png diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/test-the-books-service-api-01.png b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/test-the-books-service-api-01.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/test-the-books-service-api-01.png rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/test-the-books-service-api-01.png diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/test-the-composed-media-service-api-01.png b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/test-the-composed-media-service-api-01.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/test-the-composed-media-service-api-01.png rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/test-the-composed-media-service-api-01.png diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/test-the-movies-service-api-01.png b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/test-the-movies-service-api-01.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/test-the-movies-service-api-01.png rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/test-the-movies-service-api-01.png diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith-images/test-the-people-service-01.png b/versioned_docs/version-2.16.0/guides/build-modular-monolith-images/test-the-people-service-01.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith-images/test-the-people-service-01.png rename to versioned_docs/version-2.16.0/guides/build-modular-monolith-images/test-the-people-service-01.png diff --git a/versioned_docs/version-2.15.0/guides/build-modular-monolith.md b/versioned_docs/version-2.16.0/guides/build-modular-monolith.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/build-modular-monolith.md rename to versioned_docs/version-2.16.0/guides/build-modular-monolith.md diff --git a/versioned_docs/version-2.15.0/guides/compiling-typescript-for-deployment.md b/versioned_docs/version-2.16.0/guides/compiling-typescript-for-deployment.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/compiling-typescript-for-deployment.md rename to versioned_docs/version-2.16.0/guides/compiling-typescript-for-deployment.md diff --git a/versioned_docs/version-2.15.0/guides/debug-platformatic-db.md b/versioned_docs/version-2.16.0/guides/debug-platformatic-db.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/debug-platformatic-db.md rename to versioned_docs/version-2.16.0/guides/debug-platformatic-db.md diff --git a/versioned_docs/version-2.15.0/guides/deployment/advanced-fly-io-deployment.md b/versioned_docs/version-2.16.0/guides/deployment/advanced-fly-io-deployment.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/deployment/advanced-fly-io-deployment.md rename to versioned_docs/version-2.16.0/guides/deployment/advanced-fly-io-deployment.md diff --git a/versioned_docs/version-2.15.0/guides/deployment/deploy-to-fly-io-with-sqlite.md b/versioned_docs/version-2.16.0/guides/deployment/deploy-to-fly-io-with-sqlite.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/deployment/deploy-to-fly-io-with-sqlite.md rename to versioned_docs/version-2.16.0/guides/deployment/deploy-to-fly-io-with-sqlite.md diff --git a/versioned_docs/version-2.15.0/guides/deployment/deploying-on-lambda.md b/versioned_docs/version-2.16.0/guides/deployment/deploying-on-lambda.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/deployment/deploying-on-lambda.md rename to versioned_docs/version-2.16.0/guides/deployment/deploying-on-lambda.md diff --git a/versioned_docs/version-2.15.0/guides/deployment/dockerize-a-watt-app.md b/versioned_docs/version-2.16.0/guides/deployment/dockerize-a-watt-app.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/deployment/dockerize-a-watt-app.md rename to versioned_docs/version-2.16.0/guides/deployment/dockerize-a-watt-app.md diff --git a/versioned_docs/version-2.15.0/guides/deployment/overview.md b/versioned_docs/version-2.16.0/guides/deployment/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/deployment/overview.md rename to versioned_docs/version-2.16.0/guides/deployment/overview.md diff --git a/versioned_docs/version-2.15.0/guides/environment-variables.md b/versioned_docs/version-2.16.0/guides/environment-variables.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/environment-variables.md rename to versioned_docs/version-2.16.0/guides/environment-variables.md diff --git a/versioned_docs/version-2.16.0/guides/generate-frontend-code-to-consume-platformatic-rest-api.md b/versioned_docs/version-2.16.0/guides/generate-frontend-code-to-consume-platformatic-rest-api.md new file mode 100644 index 0000000000..e60da18ef7 --- /dev/null +++ b/versioned_docs/version-2.16.0/guides/generate-frontend-code-to-consume-platformatic-rest-api.md @@ -0,0 +1,316 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; +import NewApiProjectInstructions from '../getting-started/new-api-project-instructions.md'; +import SetupWatt from '../getting-started/setup-watt.md'; + +# Build Front-end for Platformatic REST API + +Platformatic apps expose REST APIs that provide provide CRUD (Create, Read, +Update, Delete) functionality for each entity (see the +[Introduction to the REST API](https://docs.platformatic.dev/docs/reference/sql-openapi/introduction) +documentation for more information on the REST API) by default. + +In this guide, you will learn how to create a new Platformatic guide with Watt, Frontend Client, add a frontend to consume your Platformatic REST API. + +## Create a Watt Application + + + + +### Add a Platformatic DB service + + + + + +### Add a new Platformatic service + +Every Platformatic service uses the "Movie" demo entity and includes the corresponding table, migrations, and REST API to create, read, update, and delete movies. + +Launch your application with the command below: + +```sh +npm run dev +``` + +Your Platformatic app should be at the `http://127.0.0.1:3042/` URL. + +## Create a Front-end Application + +Refer to the [Scaffolding Your First Vite Project](https://vitejs.dev/guide/#scaffolding-your-first-vite-project) documentation to create a new front-end application, and call it "rest-api-frontend". + +:::info +Please note Vite is suggested only for practical reasons, Platformatic Watt supports Astro, Remix, Next.js and Vite frameworks. +::: + +In the `web` directory of your application, run the command: + + + + + +```bash +npm create vite@latest rest-api-frontend -- --template react +``` + + + + +```bash +npm create vite@latest rest-api-frontend -- --template vue-ts +``` + + + + +and then follow the Vite's instructions + +```bash +Scaffolding project in /Users/noriste/Sites/temp/platformatic/rest-api-frontend... + +Done. Now run: + + cd rest-api-frontend + npm install + npm run dev +``` + +Once done, run the command below to add `watt.json` file to your frontend application: + +```sh +npx wattpm import web/frontend +``` + +Add your frontend `id` and DB service to your `platformatic.json` file in your `web/composer` application: + +```json +{ + "$schema": "https://schemas.platformatic.dev/@platformatic/composer/2.15.0.json", + "composer": { + "services": [ + { + "id": "db", + "openapi": { + "url": "/documentation/json", + "prefix": "/db" + } + }, + { + "id":"frontend" // Frontend ID for Vite applications + } + ], + "refreshTimeout": 1000 + }, + "watch": true +} +``` + + +### Add a Frontend Client for REST API + +To consume REST APIs in your Platformatic application. run the command to use Platformatic [frontend client](https://docs.platformatic.dev/docs/client/frontend) for exposing a client for your remote OpenAPI server, the client uses fetch and runs on the browser. + +```bash +cd rest-api-frontend/src +npx platformatic client http://127.0.0.1:3042 --frontend --name frontend-client +``` + +Refer to the [Platformatic CLI frontend command](https://docs.platformatic.dev/docs/reference/cli#frontend) documentation to know about the available options. + +The Platformatic CLI will generate `frontend-client.mjs`, `frontend-client-types.d.ts`, `frontend-client.openapi.json`. Refer to the [frontend client documentation](https://docs.platformatic.dev/docs/client/frontend) to learn more about the [Client](https://docs.platformatic.dev/docs/client/frontend) and [CLI](https://docs.platformatic.dev/docs/cli). + + +### React component for CRUD operations + +In this section, you’ll build a React component for CRUD operations using the autogenerated client code provided by Platformatic. The code showcases a `MovieManager.jsx` file that manages movies in a database. You will implement features to create, read, update, and delete movies. + + +```js +import { useState, useEffect } from 'react'; +import { setBaseUrl, dbGetMovies, dbCreateMovie, dbUpdateMovie, dbDeleteMovies } from './frontend-client/frontend-client.mjs'; + +// Set the base URL for the API client +setBaseUrl(window.location.origin); // Or your specific API base URL + +export default function MovieManager() { + const [movies, setMovies] = useState([]); + const [newMovie, setNewMovie] = useState({ title: '' }); + const [editMovie, setEditMovie] = useState(null); + const [showEditModal, setShowEditModal] = useState(false); + + useEffect(() => { + fetchMovies(); + }, []); + + const fetchMovies = async () => { + try { + const response = await dbGetMovies({}); + setMovies(response); + } catch (error) { + console.error('Error fetching movies:', error); + } + }; + + const handleCreateMovie = async (e) => { + e.preventDefault(); + try { + await dbCreateMovie(newMovie); + setNewMovie({ title: '' }); + fetchMovies(); + } catch (error) { + console.error('Error creating movie:', error); + } + }; + + const handleEditMovie = async (e) => { + e.preventDefault(); + try { + await dbUpdateMovie(editMovie); + setShowEditModal(false); + setEditMovie(null); + fetchMovies(); + } catch (error) { + console.error('Error updating movie:', error); + } + }; + + const handleDeleteMovie = async (id) => { + try { + await dbDeleteMovies({ id }); + fetchMovies(); + } catch (error) { + console.error('Error deleting movie:', error); + } + }; + + return ( +
+
+

Movie Management

+ + {/* Create Movie Form */} +
+ setNewMovie({ title: e.target.value })} + className="flex-1 px-4 py-2 border rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500" + /> + +
+ + {/* Movies Table */} +
+ + + + + + + + + + {movies.map((movie) => ( + + + + + + ))} + +
IDTitleActions
{movie.id}{movie.title} + + +
+
+ + {/* Edit Modal */} + {showEditModal && ( +
+
+

Edit Movie

+
+ setEditMovie({ ...editMovie, title: e.target.value })} + className="w-full px-4 py-2 mb-4 border rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500" + /> +
+ + +
+
+
+
+ )} +
+
+ ); +} +``` + +This component handles all the CRUD operations for managing movies by interacting with the autogenerated client functions (`dbGetMovies`, `dbCreateMovie`, etc.) from your Platformatic API. + +#### Rendering in App.jsx + +To include this component in your app, import it into your `App.jsx` file: + +```js +import MovieManager from './MovieManager'; +import './App.css' + +function App() { + return ( +
+ +
+ ); +} + +export default App; +``` + +The styling for the `MovieManager.jsx` file uses Tailwind CSS. See the [tailwind documentation](https://tailwindcss.com/docs/installation) on how to install and set it up. + +### Start your Server + +In the root of your project directory, run the command: + +```sh +npm run dev +``` + +Your application is now up and running on `http://127.0.0.1:3042/frontend` + +![Platformatic CRUD movie application](./images/movie-app.png) \ No newline at end of file diff --git a/versioned_docs/version-2.15.0/guides/images/kibana-1.png b/versioned_docs/version-2.16.0/guides/images/kibana-1.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/images/kibana-1.png rename to versioned_docs/version-2.16.0/guides/images/kibana-1.png diff --git a/versioned_docs/version-2.15.0/guides/images/kibana-2.png b/versioned_docs/version-2.16.0/guides/images/kibana-2.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/images/kibana-2.png rename to versioned_docs/version-2.16.0/guides/images/kibana-2.png diff --git a/versioned_docs/version-2.15.0/guides/images/kibana-3.png b/versioned_docs/version-2.16.0/guides/images/kibana-3.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/images/kibana-3.png rename to versioned_docs/version-2.16.0/guides/images/kibana-3.png diff --git a/versioned_docs/version-2.15.0/guides/images/kibana-4.png b/versioned_docs/version-2.16.0/guides/images/kibana-4.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/images/kibana-4.png rename to versioned_docs/version-2.16.0/guides/images/kibana-4.png diff --git a/versioned_docs/version-2.16.0/guides/images/movie-app.png b/versioned_docs/version-2.16.0/guides/images/movie-app.png new file mode 100644 index 0000000000..5c461fd011 Binary files /dev/null and b/versioned_docs/version-2.16.0/guides/images/movie-app.png differ diff --git a/versioned_docs/version-2.15.0/guides/jwt-auth0.md b/versioned_docs/version-2.16.0/guides/jwt-auth0.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/jwt-auth0.md rename to versioned_docs/version-2.16.0/guides/jwt-auth0.md diff --git a/versioned_docs/version-2.15.0/guides/jwt-keycloak.md b/versioned_docs/version-2.16.0/guides/jwt-keycloak.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/jwt-keycloak.md rename to versioned_docs/version-2.16.0/guides/jwt-keycloak.md diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/assign_service_account_roles.png b/versioned_docs/version-2.16.0/guides/keycloak-images/assign_service_account_roles.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/assign_service_account_roles.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/assign_service_account_roles.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/client_credentials.png b/versioned_docs/version-2.16.0/guides/keycloak-images/client_credentials.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/client_credentials.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/client_credentials.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/create_client.png b/versioned_docs/version-2.16.0/guides/keycloak-images/create_client.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/create_client.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/create_client.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/create_client_2.png b/versioned_docs/version-2.16.0/guides/keycloak-images/create_client_2.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/create_client_2.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/create_client_2.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/create_client_3.png b/versioned_docs/version-2.16.0/guides/keycloak-images/create_client_3.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/create_client_3.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/create_client_3.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/create_client_4.png b/versioned_docs/version-2.16.0/guides/keycloak-images/create_client_4.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/create_client_4.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/create_client_4.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/create_platformatic.png b/versioned_docs/version-2.16.0/guides/keycloak-images/create_platformatic.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/create_platformatic.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/create_platformatic.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/create_realm.png b/versioned_docs/version-2.16.0/guides/keycloak-images/create_realm.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/create_realm.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/create_realm.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/create_realm_2.png b/versioned_docs/version-2.16.0/guides/keycloak-images/create_realm_2.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/create_realm_2.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/create_realm_2.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/create_realm_role.png b/versioned_docs/version-2.16.0/guides/keycloak-images/create_realm_role.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/create_realm_role.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/create_realm_role.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/plt_auth.png b/versioned_docs/version-2.16.0/guides/keycloak-images/plt_auth.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/plt_auth.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/plt_auth.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/plt_start.png b/versioned_docs/version-2.16.0/guides/keycloak-images/plt_start.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/plt_start.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/plt_start.png diff --git a/versioned_docs/version-2.15.0/guides/keycloak-images/plt_unauth.png b/versioned_docs/version-2.16.0/guides/keycloak-images/plt_unauth.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/keycloak-images/plt_unauth.png rename to versioned_docs/version-2.16.0/guides/keycloak-images/plt_unauth.png diff --git a/versioned_docs/version-2.15.0/guides/logging-to-elasticsearch.md b/versioned_docs/version-2.16.0/guides/logging-to-elasticsearch.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/logging-to-elasticsearch.md rename to versioned_docs/version-2.16.0/guides/logging-to-elasticsearch.md diff --git a/versioned_docs/version-2.15.0/guides/migrating-express-app-to-platformatic-service.md b/versioned_docs/version-2.16.0/guides/migrating-express-app-to-platformatic-service.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/migrating-express-app-to-platformatic-service.md rename to versioned_docs/version-2.16.0/guides/migrating-express-app-to-platformatic-service.md diff --git a/versioned_docs/version-2.15.0/guides/migrating-fastify-app-to-platformatic-service.md b/versioned_docs/version-2.16.0/guides/migrating-fastify-app-to-platformatic-service.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/migrating-fastify-app-to-platformatic-service.md rename to versioned_docs/version-2.16.0/guides/migrating-fastify-app-to-platformatic-service.md diff --git a/versioned_docs/version-2.15.0/guides/monitoring.md b/versioned_docs/version-2.16.0/guides/monitoring.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/monitoring.md rename to versioned_docs/version-2.16.0/guides/monitoring.md diff --git a/versioned_docs/version-2.15.0/guides/movie-quotes-app-tutorial.md b/versioned_docs/version-2.16.0/guides/movie-quotes-app-tutorial.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/movie-quotes-app-tutorial.md rename to versioned_docs/version-2.16.0/guides/movie-quotes-app-tutorial.md diff --git a/versioned_docs/version-2.15.0/guides/prisma.md b/versioned_docs/version-2.16.0/guides/prisma.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/prisma.md rename to versioned_docs/version-2.16.0/guides/prisma.md diff --git a/versioned_docs/version-2.15.0/guides/runtime-cli-managing.md b/versioned_docs/version-2.16.0/guides/runtime-cli-managing.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/runtime-cli-managing.md rename to versioned_docs/version-2.16.0/guides/runtime-cli-managing.md diff --git a/versioned_docs/version-2.15.0/guides/securing-platformatic-db.md b/versioned_docs/version-2.16.0/guides/securing-platformatic-db.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/securing-platformatic-db.md rename to versioned_docs/version-2.16.0/guides/securing-platformatic-db.md diff --git a/versioned_docs/version-2.15.0/guides/seed-a-database.md b/versioned_docs/version-2.16.0/guides/seed-a-database.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/seed-a-database.md rename to versioned_docs/version-2.16.0/guides/seed-a-database.md diff --git a/versioned_docs/version-2.15.0/guides/telemetry-images/compose-openapi.png b/versioned_docs/version-2.16.0/guides/telemetry-images/compose-openapi.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/telemetry-images/compose-openapi.png rename to versioned_docs/version-2.16.0/guides/telemetry-images/compose-openapi.png diff --git a/versioned_docs/version-2.15.0/guides/telemetry-images/jaeger-1.png b/versioned_docs/version-2.16.0/guides/telemetry-images/jaeger-1.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/telemetry-images/jaeger-1.png rename to versioned_docs/version-2.16.0/guides/telemetry-images/jaeger-1.png diff --git a/versioned_docs/version-2.15.0/guides/telemetry-images/jaeger-2.png b/versioned_docs/version-2.16.0/guides/telemetry-images/jaeger-2.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/telemetry-images/jaeger-2.png rename to versioned_docs/version-2.16.0/guides/telemetry-images/jaeger-2.png diff --git a/versioned_docs/version-2.15.0/guides/telemetry-images/jaeger-3.png b/versioned_docs/version-2.16.0/guides/telemetry-images/jaeger-3.png similarity index 100% rename from versioned_docs/version-2.15.0/guides/telemetry-images/jaeger-3.png rename to versioned_docs/version-2.16.0/guides/telemetry-images/jaeger-3.png diff --git a/versioned_docs/version-2.15.0/guides/telemetry.md b/versioned_docs/version-2.16.0/guides/telemetry.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/telemetry.md rename to versioned_docs/version-2.16.0/guides/telemetry.md diff --git a/versioned_docs/version-2.15.0/guides/use-env-with-platformatic.md b/versioned_docs/version-2.16.0/guides/use-env-with-platformatic.md similarity index 100% rename from versioned_docs/version-2.15.0/guides/use-env-with-platformatic.md rename to versioned_docs/version-2.16.0/guides/use-env-with-platformatic.md diff --git a/versioned_docs/version-2.15.0/images/ENV_Var_Platforamtic.png b/versioned_docs/version-2.16.0/images/ENV_Var_Platforamtic.png similarity index 100% rename from versioned_docs/version-2.15.0/images/ENV_Var_Platforamtic.png rename to versioned_docs/version-2.16.0/images/ENV_Var_Platforamtic.png diff --git a/versioned_docs/version-2.15.0/images/Platformatic_Composer_Diagram_(Light_Mode).png b/versioned_docs/version-2.16.0/images/Platformatic_Composer_Diagram_(Light_Mode).png similarity index 100% rename from versioned_docs/version-2.15.0/images/Platformatic_Composer_Diagram_(Light_Mode).png rename to versioned_docs/version-2.16.0/images/Platformatic_Composer_Diagram_(Light_Mode).png diff --git a/versioned_docs/version-2.15.0/images/Platformatic_DB_Diagram_(Light_Mode).png b/versioned_docs/version-2.16.0/images/Platformatic_DB_Diagram_(Light_Mode).png similarity index 100% rename from versioned_docs/version-2.15.0/images/Platformatic_DB_Diagram_(Light_Mode).png rename to versioned_docs/version-2.16.0/images/Platformatic_DB_Diagram_(Light_Mode).png diff --git a/versioned_docs/version-2.15.0/images/Platformatic_Runtime_Diagram_(Light_Mode).png b/versioned_docs/version-2.16.0/images/Platformatic_Runtime_Diagram_(Light_Mode).png similarity index 100% rename from versioned_docs/version-2.15.0/images/Platformatic_Runtime_Diagram_(Light_Mode).png rename to versioned_docs/version-2.16.0/images/Platformatic_Runtime_Diagram_(Light_Mode).png diff --git a/versioned_docs/version-2.15.0/images/Platformatic_Service_Diagram_(Light_Mode).png b/versioned_docs/version-2.16.0/images/Platformatic_Service_Diagram_(Light_Mode).png similarity index 100% rename from versioned_docs/version-2.15.0/images/Platformatic_Service_Diagram_(Light_Mode).png rename to versioned_docs/version-2.16.0/images/Platformatic_Service_Diagram_(Light_Mode).png diff --git a/versioned_docs/version-2.15.0/images/Platformatic_Stackables_Diagram_(Light_Mode).png b/versioned_docs/version-2.16.0/images/Platformatic_Stackables_Diagram_(Light_Mode).png similarity index 100% rename from versioned_docs/version-2.15.0/images/Platformatic_Stackables_Diagram_(Light_Mode).png rename to versioned_docs/version-2.16.0/images/Platformatic_Stackables_Diagram_(Light_Mode).png diff --git a/versioned_docs/version-2.15.0/images/img-dark/Platformatic_Composer_Diagram_(Dark_Mode).png b/versioned_docs/version-2.16.0/images/img-dark/Platformatic_Composer_Diagram_(Dark_Mode).png similarity index 100% rename from versioned_docs/version-2.15.0/images/img-dark/Platformatic_Composer_Diagram_(Dark_Mode).png rename to versioned_docs/version-2.16.0/images/img-dark/Platformatic_Composer_Diagram_(Dark_Mode).png diff --git a/versioned_docs/version-2.15.0/images/img-dark/Platformatic_DB_Diagram_(Dark_Mode).png b/versioned_docs/version-2.16.0/images/img-dark/Platformatic_DB_Diagram_(Dark_Mode).png similarity index 100% rename from versioned_docs/version-2.15.0/images/img-dark/Platformatic_DB_Diagram_(Dark_Mode).png rename to versioned_docs/version-2.16.0/images/img-dark/Platformatic_DB_Diagram_(Dark_Mode).png diff --git a/versioned_docs/version-2.15.0/images/img-dark/Platformatic_Runtime_Diagram_(Dark_Mode).png b/versioned_docs/version-2.16.0/images/img-dark/Platformatic_Runtime_Diagram_(Dark_Mode).png similarity index 100% rename from versioned_docs/version-2.15.0/images/img-dark/Platformatic_Runtime_Diagram_(Dark_Mode).png rename to versioned_docs/version-2.16.0/images/img-dark/Platformatic_Runtime_Diagram_(Dark_Mode).png diff --git a/versioned_docs/version-2.15.0/images/img-dark/Platformatic_Service_Diagram_(Dark_Mode).png b/versioned_docs/version-2.16.0/images/img-dark/Platformatic_Service_Diagram_(Dark_Mode).png similarity index 100% rename from versioned_docs/version-2.15.0/images/img-dark/Platformatic_Service_Diagram_(Dark_Mode).png rename to versioned_docs/version-2.16.0/images/img-dark/Platformatic_Service_Diagram_(Dark_Mode).png diff --git a/versioned_docs/version-2.15.0/images/img-dark/Platformatic_Stackables_Diagram_(Dark_Mode).png b/versioned_docs/version-2.16.0/images/img-dark/Platformatic_Stackables_Diagram_(Dark_Mode).png similarity index 100% rename from versioned_docs/version-2.15.0/images/img-dark/Platformatic_Stackables_Diagram_(Dark_Mode).png rename to versioned_docs/version-2.16.0/images/img-dark/Platformatic_Stackables_Diagram_(Dark_Mode).png diff --git a/versioned_docs/version-2.15.0/learn/beginner/crud-application.md b/versioned_docs/version-2.16.0/learn/beginner/crud-application.md similarity index 100% rename from versioned_docs/version-2.15.0/learn/beginner/crud-application.md rename to versioned_docs/version-2.16.0/learn/beginner/crud-application.md diff --git a/versioned_docs/version-2.15.0/learn/glossary.md b/versioned_docs/version-2.16.0/learn/glossary.md similarity index 100% rename from versioned_docs/version-2.15.0/learn/glossary.md rename to versioned_docs/version-2.16.0/learn/glossary.md diff --git a/versioned_docs/version-2.15.0/learn/images/plt-endpoints.png b/versioned_docs/version-2.16.0/learn/images/plt-endpoints.png similarity index 100% rename from versioned_docs/version-2.15.0/learn/images/plt-endpoints.png rename to versioned_docs/version-2.16.0/learn/images/plt-endpoints.png diff --git a/versioned_docs/version-2.15.0/learn/images/plt-localhost.png b/versioned_docs/version-2.16.0/learn/images/plt-localhost.png similarity index 100% rename from versioned_docs/version-2.15.0/learn/images/plt-localhost.png rename to versioned_docs/version-2.16.0/learn/images/plt-localhost.png diff --git a/versioned_docs/version-2.15.0/learn/images/test-endpoint.png b/versioned_docs/version-2.16.0/learn/images/test-endpoint.png similarity index 100% rename from versioned_docs/version-2.15.0/learn/images/test-endpoint.png rename to versioned_docs/version-2.16.0/learn/images/test-endpoint.png diff --git a/versioned_docs/version-2.15.0/learn/overview.md b/versioned_docs/version-2.16.0/learn/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/learn/overview.md rename to versioned_docs/version-2.16.0/learn/overview.md diff --git a/versioned_docs/version-2.15.0/packages/astro/configuration.md b/versioned_docs/version-2.16.0/packages/astro/configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/astro/configuration.md rename to versioned_docs/version-2.16.0/packages/astro/configuration.md diff --git a/versioned_docs/version-2.15.0/packages/astro/overview.md b/versioned_docs/version-2.16.0/packages/astro/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/astro/overview.md rename to versioned_docs/version-2.16.0/packages/astro/overview.md diff --git a/versioned_docs/version-2.15.0/packages/errors.md b/versioned_docs/version-2.16.0/packages/errors.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/errors.md rename to versioned_docs/version-2.16.0/packages/errors.md diff --git a/versioned_docs/version-2.15.0/packages/next/configuration.md b/versioned_docs/version-2.16.0/packages/next/configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/next/configuration.md rename to versioned_docs/version-2.16.0/packages/next/configuration.md diff --git a/versioned_docs/version-2.15.0/packages/next/overview.md b/versioned_docs/version-2.16.0/packages/next/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/next/overview.md rename to versioned_docs/version-2.16.0/packages/next/overview.md diff --git a/versioned_docs/version-2.15.0/packages/node/configuration.md b/versioned_docs/version-2.16.0/packages/node/configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/node/configuration.md rename to versioned_docs/version-2.16.0/packages/node/configuration.md diff --git a/versioned_docs/version-2.15.0/packages/node/overview.md b/versioned_docs/version-2.16.0/packages/node/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/node/overview.md rename to versioned_docs/version-2.16.0/packages/node/overview.md diff --git a/versioned_docs/version-2.15.0/packages/remix/configuration.md b/versioned_docs/version-2.16.0/packages/remix/configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/remix/configuration.md rename to versioned_docs/version-2.16.0/packages/remix/configuration.md diff --git a/versioned_docs/version-2.15.0/packages/remix/overview.md b/versioned_docs/version-2.16.0/packages/remix/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/remix/overview.md rename to versioned_docs/version-2.16.0/packages/remix/overview.md diff --git a/versioned_docs/version-2.15.0/packages/sql-events/fastify-plugin.md b/versioned_docs/version-2.16.0/packages/sql-events/fastify-plugin.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-events/fastify-plugin.md rename to versioned_docs/version-2.16.0/packages/sql-events/fastify-plugin.md diff --git a/versioned_docs/version-2.15.0/packages/sql-events/overview.md b/versioned_docs/version-2.16.0/packages/sql-events/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-events/overview.md rename to versioned_docs/version-2.16.0/packages/sql-events/overview.md diff --git a/versioned_docs/version-2.15.0/packages/sql-graphql/examples/deleteEntity.js b/versioned_docs/version-2.16.0/packages/sql-graphql/examples/deleteEntity.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-graphql/examples/deleteEntity.js rename to versioned_docs/version-2.16.0/packages/sql-graphql/examples/deleteEntity.js diff --git a/versioned_docs/version-2.15.0/packages/sql-graphql/examples/insertEntity.js b/versioned_docs/version-2.16.0/packages/sql-graphql/examples/insertEntity.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-graphql/examples/insertEntity.js rename to versioned_docs/version-2.16.0/packages/sql-graphql/examples/insertEntity.js diff --git a/versioned_docs/version-2.15.0/packages/sql-graphql/examples/query.js b/versioned_docs/version-2.16.0/packages/sql-graphql/examples/query.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-graphql/examples/query.js rename to versioned_docs/version-2.16.0/packages/sql-graphql/examples/query.js diff --git a/versioned_docs/version-2.15.0/packages/sql-graphql/examples/saveEntity.js b/versioned_docs/version-2.16.0/packages/sql-graphql/examples/saveEntity.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-graphql/examples/saveEntity.js rename to versioned_docs/version-2.16.0/packages/sql-graphql/examples/saveEntity.js diff --git a/versioned_docs/version-2.15.0/packages/sql-graphql/ignore.md b/versioned_docs/version-2.16.0/packages/sql-graphql/ignore.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-graphql/ignore.md rename to versioned_docs/version-2.16.0/packages/sql-graphql/ignore.md diff --git a/versioned_docs/version-2.15.0/packages/sql-graphql/many-to-many.md b/versioned_docs/version-2.16.0/packages/sql-graphql/many-to-many.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-graphql/many-to-many.md rename to versioned_docs/version-2.16.0/packages/sql-graphql/many-to-many.md diff --git a/versioned_docs/version-2.15.0/packages/sql-graphql/mutations.md b/versioned_docs/version-2.16.0/packages/sql-graphql/mutations.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-graphql/mutations.md rename to versioned_docs/version-2.16.0/packages/sql-graphql/mutations.md diff --git a/versioned_docs/version-2.15.0/packages/sql-graphql/overview.md b/versioned_docs/version-2.16.0/packages/sql-graphql/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-graphql/overview.md rename to versioned_docs/version-2.16.0/packages/sql-graphql/overview.md diff --git a/versioned_docs/version-2.15.0/packages/sql-graphql/queries.md b/versioned_docs/version-2.16.0/packages/sql-graphql/queries.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-graphql/queries.md rename to versioned_docs/version-2.16.0/packages/sql-graphql/queries.md diff --git a/versioned_docs/version-2.15.0/packages/sql-graphql/subscriptions.md b/versioned_docs/version-2.16.0/packages/sql-graphql/subscriptions.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-graphql/subscriptions.md rename to versioned_docs/version-2.16.0/packages/sql-graphql/subscriptions.md diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/entities/api.md b/versioned_docs/version-2.16.0/packages/sql-mapper/entities/api.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/entities/api.md rename to versioned_docs/version-2.16.0/packages/sql-mapper/entities/api.md diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/entities/example.md b/versioned_docs/version-2.16.0/packages/sql-mapper/entities/example.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/entities/example.md rename to versioned_docs/version-2.16.0/packages/sql-mapper/entities/example.md diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/entities/fields.md b/versioned_docs/version-2.16.0/packages/sql-mapper/entities/fields.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/entities/fields.md rename to versioned_docs/version-2.16.0/packages/sql-mapper/entities/fields.md diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/entities/hooks.md b/versioned_docs/version-2.16.0/packages/sql-mapper/entities/hooks.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/entities/hooks.md rename to versioned_docs/version-2.16.0/packages/sql-mapper/entities/hooks.md diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/entities/overview.md b/versioned_docs/version-2.16.0/packages/sql-mapper/entities/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/entities/overview.md rename to versioned_docs/version-2.16.0/packages/sql-mapper/entities/overview.md diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/entities/relations.md b/versioned_docs/version-2.16.0/packages/sql-mapper/entities/relations.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/entities/relations.md rename to versioned_docs/version-2.16.0/packages/sql-mapper/entities/relations.md diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/entities/timestamps.md b/versioned_docs/version-2.16.0/packages/sql-mapper/entities/timestamps.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/entities/timestamps.md rename to versioned_docs/version-2.16.0/packages/sql-mapper/entities/timestamps.md diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/entities/transactions.md b/versioned_docs/version-2.16.0/packages/sql-mapper/entities/transactions.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/entities/transactions.md rename to versioned_docs/version-2.16.0/packages/sql-mapper/entities/transactions.md diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/examples/count.js b/versioned_docs/version-2.16.0/packages/sql-mapper/examples/count.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/examples/count.js rename to versioned_docs/version-2.16.0/packages/sql-mapper/examples/count.js diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/examples/delete.js b/versioned_docs/version-2.16.0/packages/sql-mapper/examples/delete.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/examples/delete.js rename to versioned_docs/version-2.16.0/packages/sql-mapper/examples/delete.js diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/examples/fastify-plugin.js b/versioned_docs/version-2.16.0/packages/sql-mapper/examples/fastify-plugin.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/examples/fastify-plugin.js rename to versioned_docs/version-2.16.0/packages/sql-mapper/examples/fastify-plugin.js diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/examples/fields.js b/versioned_docs/version-2.16.0/packages/sql-mapper/examples/fields.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/examples/fields.js rename to versioned_docs/version-2.16.0/packages/sql-mapper/examples/fields.js diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/examples/find.js b/versioned_docs/version-2.16.0/packages/sql-mapper/examples/find.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/examples/find.js rename to versioned_docs/version-2.16.0/packages/sql-mapper/examples/find.js diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/examples/hooks.js b/versioned_docs/version-2.16.0/packages/sql-mapper/examples/hooks.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/examples/hooks.js rename to versioned_docs/version-2.16.0/packages/sql-mapper/examples/hooks.js diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/examples/insert.js b/versioned_docs/version-2.16.0/packages/sql-mapper/examples/insert.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/examples/insert.js rename to versioned_docs/version-2.16.0/packages/sql-mapper/examples/insert.js diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/examples/relations.js b/versioned_docs/version-2.16.0/packages/sql-mapper/examples/relations.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/examples/relations.js rename to versioned_docs/version-2.16.0/packages/sql-mapper/examples/relations.js diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/examples/save.js b/versioned_docs/version-2.16.0/packages/sql-mapper/examples/save.js similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/examples/save.js rename to versioned_docs/version-2.16.0/packages/sql-mapper/examples/save.js diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/fastify-plugin.md b/versioned_docs/version-2.16.0/packages/sql-mapper/fastify-plugin.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/fastify-plugin.md rename to versioned_docs/version-2.16.0/packages/sql-mapper/fastify-plugin.md diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/images/plt-db-hooks.svg b/versioned_docs/version-2.16.0/packages/sql-mapper/images/plt-db-hooks.svg similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/images/plt-db-hooks.svg rename to versioned_docs/version-2.16.0/packages/sql-mapper/images/plt-db-hooks.svg diff --git a/versioned_docs/version-2.15.0/packages/sql-mapper/overview.md b/versioned_docs/version-2.16.0/packages/sql-mapper/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-mapper/overview.md rename to versioned_docs/version-2.16.0/packages/sql-mapper/overview.md diff --git a/versioned_docs/version-2.15.0/packages/sql-openapi/api.md b/versioned_docs/version-2.16.0/packages/sql-openapi/api.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-openapi/api.md rename to versioned_docs/version-2.16.0/packages/sql-openapi/api.md diff --git a/versioned_docs/version-2.15.0/packages/sql-openapi/explicit-include.md b/versioned_docs/version-2.16.0/packages/sql-openapi/explicit-include.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-openapi/explicit-include.md rename to versioned_docs/version-2.16.0/packages/sql-openapi/explicit-include.md diff --git a/versioned_docs/version-2.15.0/packages/sql-openapi/ignore.md b/versioned_docs/version-2.16.0/packages/sql-openapi/ignore.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-openapi/ignore.md rename to versioned_docs/version-2.16.0/packages/sql-openapi/ignore.md diff --git a/versioned_docs/version-2.15.0/packages/sql-openapi/overview.md b/versioned_docs/version-2.16.0/packages/sql-openapi/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/sql-openapi/overview.md rename to versioned_docs/version-2.16.0/packages/sql-openapi/overview.md diff --git a/versioned_docs/version-2.15.0/packages/vite/configuration.md b/versioned_docs/version-2.16.0/packages/vite/configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/vite/configuration.md rename to versioned_docs/version-2.16.0/packages/vite/configuration.md diff --git a/versioned_docs/version-2.15.0/packages/vite/overview.md b/versioned_docs/version-2.16.0/packages/vite/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/packages/vite/overview.md rename to versioned_docs/version-2.16.0/packages/vite/overview.md diff --git a/versioned_docs/version-2.15.0/runtime/_shared-configuration.md b/versioned_docs/version-2.16.0/runtime/_shared-configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/runtime/_shared-configuration.md rename to versioned_docs/version-2.16.0/runtime/_shared-configuration.md diff --git a/versioned_docs/version-2.15.0/runtime/configuration.md b/versioned_docs/version-2.16.0/runtime/configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/runtime/configuration.md rename to versioned_docs/version-2.16.0/runtime/configuration.md diff --git a/versioned_docs/version-2.15.0/runtime/overview.md b/versioned_docs/version-2.16.0/runtime/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/runtime/overview.md rename to versioned_docs/version-2.16.0/runtime/overview.md diff --git a/versioned_docs/version-2.15.0/runtime/programmatic.md b/versioned_docs/version-2.16.0/runtime/programmatic.md similarity index 100% rename from versioned_docs/version-2.15.0/runtime/programmatic.md rename to versioned_docs/version-2.16.0/runtime/programmatic.md diff --git a/versioned_docs/version-2.15.0/service/configuration.md b/versioned_docs/version-2.16.0/service/configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/service/configuration.md rename to versioned_docs/version-2.16.0/service/configuration.md diff --git a/versioned_docs/version-2.15.0/service/overview.md b/versioned_docs/version-2.16.0/service/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/service/overview.md rename to versioned_docs/version-2.16.0/service/overview.md diff --git a/versioned_docs/version-2.15.0/service/plugin.md b/versioned_docs/version-2.16.0/service/plugin.md similarity index 100% rename from versioned_docs/version-2.15.0/service/plugin.md rename to versioned_docs/version-2.16.0/service/plugin.md diff --git a/versioned_docs/version-2.15.0/service/programmatic.md b/versioned_docs/version-2.16.0/service/programmatic.md similarity index 100% rename from versioned_docs/version-2.15.0/service/programmatic.md rename to versioned_docs/version-2.16.0/service/programmatic.md diff --git a/versioned_docs/version-2.15.0/watt/configuration.md b/versioned_docs/version-2.16.0/watt/configuration.md similarity index 100% rename from versioned_docs/version-2.15.0/watt/configuration.md rename to versioned_docs/version-2.16.0/watt/configuration.md diff --git a/versioned_docs/version-2.15.0/watt/overview.md b/versioned_docs/version-2.16.0/watt/overview.md similarity index 100% rename from versioned_docs/version-2.15.0/watt/overview.md rename to versioned_docs/version-2.16.0/watt/overview.md diff --git a/versioned_docs/version-2.15.0/watt/reference.md b/versioned_docs/version-2.16.0/watt/reference.md similarity index 100% rename from versioned_docs/version-2.15.0/watt/reference.md rename to versioned_docs/version-2.16.0/watt/reference.md diff --git a/versioned_sidebars/version-2.15.0-sidebars.json b/versioned_sidebars/version-2.16.0-sidebars.json similarity index 100% rename from versioned_sidebars/version-2.15.0-sidebars.json rename to versioned_sidebars/version-2.16.0-sidebars.json diff --git a/versions.json b/versions.json index 6843c83092..2e24399e36 100644 --- a/versions.json +++ b/versions.json @@ -1,4 +1,4 @@ [ - "2.15.0", + "2.16.0", "1.53.4" ] \ No newline at end of file