You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/04-get-started/02-quickstart.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -70,7 +70,7 @@ If you are using Cursor, you will need to **enable the Serverpod and Dart MCP se
70
70
71
71
## Start the server and the app
72
72
73
-
Start the server and the Flutter app by opening up a terminal window and running the [`serverpod start`](../06-concepts/00-start-command.md) command:
73
+
Start the server and the Flutter app by opening up a terminal window and running the [`serverpod start`](./concepts/server-fundamentals/running-your-server) command:
Copy file name to clipboardExpand all lines: docs/04-get-started/03-how-it-works.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,7 +15,7 @@ Serverpod is a full backend. It manages your database, authentication, file uplo
15
15
16
16
A Serverpod project starts with the `serverpod create` command, which walks you through a few choices that shape what it generates:
17
17
18
-
-**Project type:** A full server, or a reusable [module](../concepts/modules) shared across servers.
18
+
-**Project type:** A full server, or a reusable [module](./concepts/server-fundamentals/modules) shared across servers.
19
19
-**Database and caching:** Add a Postgres database and Redis (for pub/sub and caching).
20
20
-**Authentication:** Built-in email and social sign-ins.
21
21
-**Web server:** Optionally serve web pages and your Flutter web app alongside your API.
@@ -50,7 +50,7 @@ Start your project before you begin building. With `serverpod start` already run
50
50
51
51
## Write an endpoint
52
52
53
-
In Serverpod, endpoints are the entry points your app calls to run code on the server. You define one as a class that extends `Endpoint`, with async methods that each take a [`Session`](../concepts/sessions) as their first argument and return a typed `Future`:
53
+
In Serverpod, endpoints are the entry points your app calls to run code on the server. You define one as a class that extends `Endpoint`, with async methods that each take a [`Session`](./concepts/endpoints-and-apis/sessions) as their first argument and return a typed `Future`:
54
54
55
55
```dart
56
56
class ExampleEndpoint extends Endpoint {
@@ -60,7 +60,7 @@ class ExampleEndpoint extends Endpoint {
60
60
}
61
61
```
62
62
63
-
The `Session` is the context for that one call, with access to the database, cache, signed-in user, and logging. Parameters and return types can be the built-in types (`bool`, `int`, `double`, `String`, `DateTime`, `Duration`, `Uri`, `UuidValue`, `BigInt`, `ByteData`), a `List`, `Map`, `Set`, or `Record` of those, or any data model you define. See [Working with endpoints](../concepts/working-with-endpoints) for more information.
63
+
The `Session` is the context for that one call, with access to the database, cache, signed-in user, and logging. Parameters and return types can be the built-in types (`bool`, `int`, `double`, `String`, `DateTime`, `Duration`, `Uri`, `UuidValue`, `BigInt`, `ByteData`), a `List`, `Map`, `Set`, or `Record` of those, or any data model you define. See [Working with endpoints](./concepts/endpoints-and-apis) for more information.
64
64
65
65
## Call it from your app
66
66
@@ -70,7 +70,7 @@ On the app side, the generated client turns each endpoint method into what looks
70
70
final greeting = await client.example.hello('World');
71
71
```
72
72
73
-
The client handles the request, the response, and the JSON in between. Most calls follow this request-and-response shape. For live updates, Serverpod also has [streaming endpoints](../concepts/streams) that keep a connection open so the server and app can push data to each other.
73
+
The client handles the request, the response, and the JSON in between. Most calls follow this request-and-response shape. For live updates, Serverpod also has [streaming endpoints](./concepts/endpoints-and-apis/streaming) that keep a connection open so the server and app can push data to each other.
74
74
75
75
## Define your data models
76
76
@@ -83,7 +83,7 @@ fields:
83
83
foundedDate: DateTime?
84
84
```
85
85
86
-
When you generate code, this becomes a `Company` Dart class shared by the server and your app, so the same type flows from your endpoints into your Flutter widgets. Fields support the same types as endpoint methods, plus enums and nested models, and can be nullable. See [Working with models](../concepts/models) for the details.
86
+
When you generate code, this becomes a `Company` Dart class shared by the server and your app, so the same type flows from your endpoints into your Flutter widgets. Fields support the same types as endpoint methods, plus enums and nested models, and can be nullable. See [Working with models](./concepts/data-and-the-database/models) for the details.
87
87
88
88
Add a `table` key to also store the model in a database table:
89
89
@@ -106,7 +106,7 @@ These run on the same `session` your endpoint method receives. When you change a
106
106
107
107
That database runs without setup on your part: Serverpod manages an embedded Postgres for you, with no Docker to configure. If you would rather manage Postgres yourself, you can change the configuration in the server's `config` directory.
108
108
109
-
See [Working with the database](../concepts/database/crud) for building queries, relations, and transactions.
109
+
See [Working with the database](./concepts/data-and-the-database/database/crud) for building queries, relations, and transactions.
Copy file name to clipboardExpand all lines: docs/05-build-your-first-app/01-creating-endpoints.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -112,7 +112,7 @@ class RecipeEndpoint extends Endpoint {
112
112
The endpoint reads your Gemini key from `session.passwords`, which Serverpod populates from the `passwords.yaml` file you edited earlier.
113
113
114
114
:::info
115
-
Endpoint methods take a `Session` as their first parameter and return a typed `Future` or `Stream`. You can pass and return primitive types or any [model defined in a `.spy.yaml` file](../06-concepts/02-models/01-models.md). The class name's `Endpoint` suffix is dropped on the client, so `RecipeEndpoint` is called via `client.recipe`. See [How it works](../04-get-started/03-how-it-works.md) for how that call reaches the server.
115
+
Endpoint methods take a `Session` as their first parameter and return a typed `Future` or `Stream`. You can pass and return primitive types or any [model defined in a `.spy.yaml` file](../concepts/data-and-the-database/models). The class name's `Endpoint` suffix is dropped on the client, so `RecipeEndpoint` is called via `client.recipe`. See [How it works](../04-get-started/03-how-it-works.md) for how that call reaches the server.
116
116
:::
117
117
118
118
Save the file. Because `serverpod start` is watching, it regenerates the client bindings for `generateRecipe` automatically. You'll see it run in the terminal.
Copy file name to clipboardExpand all lines: docs/05-build-your-first-app/02-models-and-data.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,7 +34,7 @@ fields:
34
34
Save the file. `serverpod start` regenerates the `Recipe` class for both the server and the client.
35
35
36
36
:::info
37
-
Fields can be primitive types, other models, or a typed `List`, `Map`, or `Set`. See [Working with models](../06-concepts/02-models/01-models.md) for the full set of options.
37
+
Fields can be primitive types, other models, or a typed `List`, `Map`, or `Set`. See [Working with models](../concepts/data-and-the-database/models) for the full set of options.
Copy file name to clipboardExpand all lines: docs/05-build-your-first-app/03-working-with-the-database.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,12 +36,12 @@ fields:
36
36
Save the file. The regenerated `Recipe` class now exposes database methods through `Recipe.db`.
37
37
38
38
:::info
39
-
See the [database models](../06-concepts/02-models/01-models.md#keywords-1) reference for all the keywords you can use in a table.
39
+
See the [database models](../concepts/data-and-the-database/models#keywords-1) reference for all the keywords you can use in a table.
40
40
:::
41
41
42
42
## Create and apply the migration
43
43
44
-
Changing the schema requires a [migration](../06-concepts/06-database/11-migrations.md): a set of SQL steps that bring the database up to date with your models. The `serverpod start` terminal has shortcuts for this, listed along the bottom. With that terminal focused:
44
+
Changing the schema requires a [migration](../concepts/data-and-the-database/database/migrations): a set of SQL steps that bring the database up to date with your models. The `serverpod start` terminal has shortcuts for this, listed along the bottom. With that terminal focused:
@@ -77,7 +77,7 @@ Add a second method to the endpoint that returns every saved recipe, newest firs
77
77
```
78
78
79
79
:::info
80
-
`insertRow`and `find` are Serverpod's typed database methods. See [CRUD](../06-concepts/06-database/05-crud.md) for the full set of operations.
80
+
`insertRow`and `find` are Serverpod's typed database methods. See [CRUD](../concepts/data-and-the-database/database/crud) for the full set of operations.
Copy file name to clipboardExpand all lines: docs/05-build-your-first-app/04-deployment.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -54,4 +54,4 @@ You've built and deployed a full-stack app with Flutter and Serverpod:
54
54
- Persistent storage with the database.
55
55
- A Flutter app that talks to your server through the generated client.
56
56
57
-
We're excited to see what you'll build next. If you need help, join the [Discord community](https://serverpod.dev/discord) or ask in our [community on GitHub](https://github.com/serverpod/serverpod/discussions). To go deeper into any topic, browse the [Concepts](../06-concepts/01-working-with-endpoints/01-working-with-endpoints.md) section.
57
+
We're excited to see what you'll build next. If you need help, join the [Discord community](https://serverpod.dev/discord) or ask in our [community on GitHub](https://github.com/serverpod/serverpod/discussions). To go deeper into any topic, browse the [Concepts](../concepts/endpoints-and-apis) section.
Copy file name to clipboardExpand all lines: docs/06-concepts/01-server-fundamentals/01-running-your-server.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,7 +12,7 @@ Run it from anywhere inside your project folder:
12
12
serverpod start
13
13
```
14
14
15
-
Use `serverpod start` for local development only. To run your server in production, deploy it instead. See [Deploy to Serverpod Cloud](../08-deployments/01-deploy-to-serverpod-cloud.md) or [Custom hosting](../08-deployments/custom-hosting/01-choosing-a-strategy.md).
15
+
Use `serverpod start` for local development only. To run your server in production, deploy it instead. See [Deploy to Serverpod Cloud](../../deployments/deploy-to-serverpod-cloud) or [Custom hosting](../../deployments/custom-hosting/choosing-a-strategy).
16
16
17
17
## Save a file to hot-reload
18
18
@@ -28,7 +28,7 @@ On boot, `serverpod start` applies any pending migrations. While it runs, you ha
28
28
-**A** applies pending migrations to the database.
29
29
-**P** creates a repair migration to reconcile a database that has drifted from your migrations.
30
30
31
-
For how migrations work, see [Migrations](database/migrations).
31
+
For how migrations work, see [Migrations](../data-and-the-database/database/migrations).
32
32
33
33
## Choose a run mode
34
34
@@ -52,6 +52,6 @@ You can still launch an app on demand from the terminal afterwards. To run witho
52
52
53
53
## Related
54
54
55
-
-[`serverpod start` reference](cli/commands/start): every command-line option.
55
+
-[`serverpod start` reference](../cli/commands/start): every command-line option.
56
56
-[Configuration](configuration): the run modes and files the server loads on start.
57
-
-[Deploy to Serverpod Cloud](../08-deployments/01-deploy-to-serverpod-cloud.md): run your server in production instead of locally.
57
+
-[Deploy to Serverpod Cloud](../../deployments/deploy-to-serverpod-cloud): run your server in production instead of locally.
Copy file name to clipboardExpand all lines: docs/06-concepts/01-server-fundamentals/02-configuration.md
+9-9Lines changed: 9 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,7 +16,7 @@ The three sources apply in order of precedence. The YAML files are the baseline,
16
16
-**Environment variables**: override matching YAML values, useful for per-deployment settings and secrets.
17
17
-**Dart configuration object**: a `ServerpodConfig` passed to the `Serverpod` constructor, overriding everything else.
18
18
19
-
For every available option, its environment variable, config-file key, and default, see the [Configuration reference](lookups/configuration-reference).
19
+
For every available option, its environment variable, config-file key, and default, see the [Configuration reference](../lookups/configuration-reference).
20
20
21
21
## Configuration files
22
22
@@ -166,8 +166,8 @@ The following table shows the built-in secrets that Serverpod uses for its core
166
166
167
167
For secrets related to first-party Serverpod packages, see their respective documentation:
168
168
169
-
- **Cloud storage**: see [Uploading files](file-uploads) for Google Cloud Storage, AWS S3, and Cloudflare R2 secrets.
170
-
- **Authentication**: see [Storing Secrets](authentication/setup#storing-secrets) on the Authentication setup page.
169
+
- **Cloud storage**: see [Uploading files](../endpoints-and-apis/file-uploads) for Google Cloud Storage, AWS S3, and Cloudflare R2 secrets.
170
+
- **Authentication**: see [Storing Secrets](../authentication/setup#storing-secrets) on the Authentication setup page.
@@ -253,7 +253,7 @@ Use `--from-file` for long or multi-line values such as a service account JSON.
253
253
254
254
Serverpod uses a `generator.yaml` file to configure code generation. Place this file in the `config` directory of your server project.
255
255
256
-
For every `generator.yaml` option, its type and default, see the [Configuration reference](lookups/configuration-reference#code-generation). The sections below explain the options you set most often.
256
+
For every `generator.yaml` option, its type and default, see the [Configuration reference](../lookups/configuration-reference#code-generation). The sections below explain the options you set most often.
257
257
258
258
### Package types
259
259
@@ -287,7 +287,7 @@ Test tools for integration testing are generated by default at `test/integration
See the [testing documentation](testing/get-started) for more details.
290
+
See the [testing documentation](../testing/get-started) for more details.
291
291
292
292
### Module dependencies
293
293
@@ -313,7 +313,7 @@ shared_packages:
313
313
- ../another_shared_package
314
314
```
315
315
316
-
Models and the protocol file are generated in each shared package's own directory when you run `serverpod generate` from your server project. See the [shared packages documentation](shared-packages) for setup, usage, and restrictions.
316
+
Models and the protocol file are generated in each shared package's own directory when you run `serverpod generate` from your server project. See the [shared packages documentation](../data-and-the-database/models/shared-packages) for setup, usage, and restrictions.
See the [serialization documentation](serialization) for implementing custom serializable classes.
328
+
See the [serialization documentation](../data-and-the-database/models/custom-serialization) for implementing custom serializable classes.
329
329
330
330
### Features
331
331
@@ -345,7 +345,7 @@ experimental_features:
345
345
all: true # Enables all available experimental features
346
346
```
347
347
348
-
The `all` key opts into every available experimental feature. No experimental features are available in the current version. See the [experimental features documentation](experimental) for details.
348
+
The `all` key opts into every available experimental feature. No experimental features are available in the current version. See the [experimental features documentation](../operations/experimental-features) for details.
349
349
350
350
:::warning
351
351
Experimental features may change or be removed in future versions.
0 commit comments