# Laravel Pages
This package lets you create pages using Markdown or Blade without having to worry about creating routes or controllers yourself.
Essentially, you create either `content/pages/foo.md` or `resources/views/pages/foo.blade.php` and the page will be accessible on the `/foo` route.
Markdown files use a pre-defined Blade view to get rendered. Blade files are meant for pages which don't follow the default layout and need more custom styling.
For instance, you could have the `/pricing` route use a Blade file (`pages/pricing.blade.php`) with a pretty design that accompanies your pricing copy.
Whereas for `/about`, you could have a simple Markdown file (`content/pages/about.md`) that describes your service using pure text without any special graphical elements.
We use this on the ArchTech website — the [About](https://archte.ch/about), [Careers](https://archte.ch/careers), and [Open source](https://archte.ch/open-source) pages are simple Markdown files.
## Installation
Require the package via composer:
```
composer require archtechx/laravel-pages
```
Publish the config file:
```
php artisan vendor:publish --tag=archtech-pages-config
```
And finally, add this line to the **end** of your `routes/web.php` file:
```php
ArchTech\Pages\Page::routes();
```
This line will register the routes in a way that ensures that your routes take precedence, and the page route is only used as the final option.
## Usage
### Markdown pages
To create a markdown file, create a file in `content/pages/`. The route to the page will match the file name (without `.md`).
For example, to create the `/about` page, create `content/pages/about.md` with this content:
```md
---
slug: about
title: 'About us'
updated_at: 2021-05-19T19:09:02+00:00
created_at: 2021-05-19T19:09:02+00:00
---
We are a web development agency that specializes in ...
```
### Blade pages
To create a Blade page, create a file in `resources/views/pages/`. Like in the Markdown example, the route to the page will match the file name without the extension.
Therefore to create the `/about` page, you'd create `resources/views/pages/about.blade.php`:
```html