> For the complete documentation index, see [llms.txt](https://howtocode.trek.io/topics/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://howtocode.trek.io/topics/deep-dives/nodejs/express/forms-and-deployment.md).

# Forms and deployment

## Introduction

This lesson picks up where the last one left off and has you creating the rest of your views. You'll be focusing on the forms needed to create and update new entries in your database. With the knowledge you pick up here, you'll really be ready to go create your own data-driven web applications. There is, of course, more to learn, but finishing this one is a *big* step towards actually being able to do your own projects.

It's another long multi-part tutorial, with plenty of useful information scattered throughout. Be sure to take your time and read everything!

This is the last lesson on the MDN tutorial. The last step, listed below takes you through what you need to do to actually deploy your project!

## Learning outcomes

By the end of this lesson, you should be able to do the following:

* Describe form handling process.
* Describe validation and sanitization.
* Describe routes.
* Work with HTML forms in Express using Pug.
* Use forms to get data from users and update the database with this data.
* Validate and sanitize input using express-validator.
* Write forms to create, update, and delete records from the database.
* Add basic forms and form-handling code to Node websites.

## Assignment

1. Let's get back to [the tutorial](https://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs/forms)
2. Read about deploying your app in the [last article](https://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs/deployment) in this tutorial.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://howtocode.trek.io/topics/deep-dives/nodejs/express/forms-and-deployment.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
