├── .gitignore ├── layouts ├── shortcodes │ └── rawhtml.html ├── _default │ ├── section.html │ ├── home.html │ ├── single.html │ └── baseof.html ├── partials │ ├── analytics.html │ ├── algolia.html │ └── nav.html └── 404.html ├── .netlify └── state.json ├── static ├── favicon.ico ├── images │ ├── header.jpg │ ├── package-training.jpg │ └── mailcoach.svg ├── svg │ ├── github.svg │ └── spatie.svg ├── css │ └── docs.css └── js │ └── docs.js ├── config.toml ├── .editorconfig ├── LICENSE.md ├── CONTRIBUTING.md ├── fetch-content.js ├── README.md ├── netlify.toml └── repositories.json /.gitignore: -------------------------------------------------------------------------------- 1 | content 2 | public 3 | resources 4 | -------------------------------------------------------------------------------- /layouts/shortcodes/rawhtml.html: -------------------------------------------------------------------------------- 1 | 2 | {{.Inner}} -------------------------------------------------------------------------------- /.netlify/state.json: -------------------------------------------------------------------------------- 1 | { 2 | "siteId": "19967bce-019f-4ab6-b662-2a8b46fc6e9c" 3 | } -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spatie/docs.spatie.be/master/static/favicon.ico -------------------------------------------------------------------------------- /static/images/header.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spatie/docs.spatie.be/master/static/images/header.jpg -------------------------------------------------------------------------------- /static/images/package-training.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spatie/docs.spatie.be/master/static/images/package-training.jpg -------------------------------------------------------------------------------- /config.toml: -------------------------------------------------------------------------------- 1 | baseURL = "http://hugo.docs.spatie.be.test/" 2 | languageCode = "en-us" 3 | title = "Spatie Docs" 4 | 5 | pluralizelisttitles = false 6 | disableKinds = ["taxonomy", "taxonomyTerm", "RSS"] 7 | -------------------------------------------------------------------------------- /layouts/_default/section.html: -------------------------------------------------------------------------------- 1 | {{ define "main" }} 2 |
We know nothing about — or it has yet to be written.
9 | Help us out on Github if you know more.
10 |
What do we know? Look at all our sections here
14 | 15 |Find even more Open Source projects on our website.
17 |{{ $section.Param "slogan" }}
18 | {{ end }} 19 | {{ end }} 20 | 21 |Find even more Open Source projects on our website.
23 |
](https://spatie.be/github-ad-click/docs.spatie.be)
12 |
13 | We invest a lot of resources into creating [best in class open source packages](https://spatie.be/open-source). You can support us by [buying one of our paid products](https://spatie.be/open-source/support-us).
14 |
15 | We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on [our contact page](https://spatie.be/about-us). We publish all received postcards on [our virtual postcard wall](https://spatie.be/open-source/postcards).
16 |
17 | ## Installation
18 |
19 | First ensure that Hugo is installed on your system.
20 |
21 | ```
22 | brew install hugo
23 | ```
24 |
25 | Node.js is also a requirement. You can download node.js from [nodejs.org](https://nodejs.org/en/).
26 |
27 | Next, fetch the content from our package repositories. You only need to run this step once.
28 |
29 | ```
30 | node fetch-content.js
31 | ```
32 |
33 | Now the site can be built with Hugo. During development, you can have Hugo spin up a local webserver and watch for changes.
34 |
35 | ```
36 | hugo server
37 | ```
38 |
39 | ## Contributing
40 |
41 | Please see [CONTRIBUTING](CONTRIBUTING.md) for details.
42 |
43 | ### Security
44 |
45 | If you discover any security related issues, please email freek@spatie.be instead of using the issue tracker.
46 |
47 | ## Credits
48 |
49 | - [Sebastian De Deyne](https://github.com/sebastiandedeyne)
50 | - [Rias Van der Veken](https://github.com/riasvdv)
51 | - [All Contributors](../../contributors)
52 |
53 | ## About Spatie
54 |
55 | Spatie is a webdesign agency based in Antwerp, Belgium. You'll find an overview of all our open source projects [on our website](https://spatie.be/opensource).
56 |
57 | ## License
58 |
59 | The MIT License (MIT). Please see [License File](LICENSE.md) for more information.
60 |
--------------------------------------------------------------------------------
/netlify.toml:
--------------------------------------------------------------------------------
1 | [build]
2 | command = "node fetch-content.js && hugo -b https://docs.spatie.be"
3 | publish = "public"
4 |
5 | [context.production.environment]
6 | HUGO_VERSION = "0.55.5"
7 | HUGO_ENV = "production"
8 |
9 | [[redirects]]
10 | from = "https://docs-spatie.netlify.com/*"
11 | to = "https://docs.spatie.be/:splat"
12 | status = 301
13 | force = true
14 |
15 | [[redirects]]
16 | from = "/laravel-backup/"
17 | to = "/laravel-backup/v6/introduction"
18 | status = 301
19 | force = true
20 |
21 | [[redirects]]
22 | from = "/laravel-backup-server/"
23 | to = "/laravel-backup-server/v1/introduction"
24 | status = 301
25 | force = true
26 |
27 | [[redirects]]
28 | from = "/laravel-medialibrary/"
29 | to = "/laravel-medialibrary/v8/introduction"
30 | status = 301
31 | force = true
32 |
33 | [[redirects]]
34 | from = "/laravel-blade-x/"
35 | to = "/laravel-blade-x/v2/introduction"
36 | status = 301
37 | force = true
38 |
39 | [[redirects]]
40 | from = "/laravel-tags/"
41 | to = "/laravel-tags/v2/introduction"
42 | status = 301
43 | force = true
44 |
45 | [[redirects]]
46 | from = "/laravel-event-projector/"
47 | to = "/laravel-event-projector/v2/introduction"
48 | status = 301
49 | force = true
50 |
51 | [[redirects]]
52 | from = "/laravel-activitylog/"
53 | to = "/laravel-activitylog/v3/introduction"
54 | status = 301
55 | force = true
56 |
57 | [[redirects]]
58 | from = "/laravel-html/"
59 | to = "/laravel-html/v2/introduction"
60 | status = 301
61 | force = true
62 |
63 | [[redirects]]
64 | from = "/laravel-server-monitor/"
65 | to = "/laravel-server-monitor/v1/introduction"
66 | status = 301
67 | force = true
68 |
69 | [[redirects]]
70 | from = "/laravel-uptime-monitor/"
71 | to = "/laravel-uptime-monitor/v3/introduction"
72 | status = 301
73 | force = true
74 |
75 | [[redirects]]
76 | from = "/laravel-slack-slash-command/"
77 | to = "/laravel-slack-slash-command/v1/introduction"
78 | status = 301
79 | force = true
80 |
81 | [[redirects]]
82 | from = "/menu/"
83 | to = "/menu/v2/introduction"
84 | status = 301
85 | force = true
86 |
87 | [[redirects]]
88 | from = "/image/"
89 | to = "/image/v1/introduction"
90 | status = 301
91 | force = true
92 |
93 | [[redirects]]
94 | from = "/enum/"
95 | to = "/enum/v2/introduction"
96 | status = 301
97 | force = true
98 |
99 | [[redirects]]
100 | from = "/laravel-resource-links/"
101 | to = "/laravel-resource-links/v1/introduction"
102 | status = 301
103 | force = true
104 |
105 | [[redirects]]
106 | from = "/laravel-dashboard/"
107 | to = "/laravel-dashboard/v1/introduction"
108 | status = 301
109 | force = true
110 |
111 | [[redirects]]
112 | from = "/laravel-multitenancy/"
113 | to = "/laravel-multitenancy/v1/introduction"
114 | status = 301
115 | force = true
116 |
117 | [[redirects]]
118 | from = "/typescript-transformer/"
119 | to = "/typescript-transformer/v1/introduction"
120 | status = 301
121 | force = true
122 |
--------------------------------------------------------------------------------
/layouts/partials/nav.html:
--------------------------------------------------------------------------------
1 | {{ $package := .FirstSection.Title }}
2 | {{ $version := "" }}
3 | {{ range .FirstSection.Sections }}
4 | {{ if .IsAncestor $.Page }}
5 | {{ $version = .Title }}
6 | {{ end }}
7 | {{ end }}
8 |
9 | {{ range .Site.Sections.ByTitle }}
10 | {{ if eq .Title $package }}
11 | {{ range .Sections.ByWeight }}
12 | {{ if and (eq .Title $version) (gt (len .Pages) 1) }}
13 | 88 | {{ $.Scratch.Get "slogan" }} 89 | {{ if and ($.Scratch.Get "version") (not (eq ($.Scratch.Get "latest") ($.Scratch.Get "version"))) }} 90 | {{ range .FirstSection.Sections }} 91 | {{ if eq ($.Scratch.Get "latest") .Title }} 92 | {{ $page := index (.Pages) 0 }} 93 | — A newer version is available! 94 | {{ end }} 95 | {{ end }} 96 | {{ end }} 97 |
98 |