# Views

Gravity has a custom [`<View>`](https://docs.usegravity.app/gravity-web/components/view) component that serves two purposes:

1. Houses global components that are common to all views like [notification](https://docs.usegravity.app/gravity-web/components/notification) and [modal](https://docs.usegravity.app/gravity-web/components/modal).
2. [Handles errors](https://docs.usegravity.app/gravity-web/handling-errors)

The `View` component is a wrapper around all of your UI views and can show a [modal](https://docs.usegravity.app/gravity-web/components/modal), create a [banner notification](https://docs.usegravity.app/gravity-native/components/notification) or [handle an error](https://docs.usegravity.app/gravity-web/handling-errors) from anywhere in your application.

### Creating New Views

To add a new view to your application, you add a new view file in the `/client/src/views` directory and [add a new route](https://docs.usegravity.app/routing#defining-a-new-route) in Node.js.

In Next.js you create a new page.jsx file inside the /src/app folder.

You can also generate new views quickly using the [toolbelt.](https://docs.usegravity.app/gravity-server/cli-toolbelt)
