Download the PHP package aw-studio/docdress without Composer
On this page you can find all versions of the php package aw-studio/docdress. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package docdress
Docdress
A package to create markdown documentations from GitHub repositories in your Laravel project. Easy editing for contributors.
The example image shows the litstack documenation. The GitHub repository can be found under litstack/litstack.io.
Table Of Contents
- Introduction
- Setup
- Add repository to Config
- Clone repository
- Structure
- Readme.md
- Table of Contents
- Configuration
- Versions
- Private repositories
- Webhook
- Algolia
- Authorization
- Alerts
- Search Component
- Testing
Introduction
With Docdress you can turn your project/package documentation within minutes into a web interface with a Laravel-like design.
Docdress offers the following features:
- Laravel-like design
- Documentation for private repositories
- Documentation from subfolders of repositories
- Automatically updated by webhooks
- Any number of repositories in a Laravel project
- Custom themes
- Authentication
Setup
Install Docdress via composer:
Now publish the required assets and the config:
You may also publish the config
or assets
only like this:
Add repository to Config
Add the desired repository to the docdress
config.
Clone repository
Once you have configured the repository, you must clone it using
docdress:clone
:
Structure
Readme.md
The index is built as a nested list in the readme.md
. It is located under
## Index
. So your readme.md
could look like this:
Table of Contents
The table of contents is built from all ##
and ###
headings under the #
heading. No link tag with a name
attribute is needed. You can easily build your
markdown file as follows:
Configuration
With Docdress any number of repositories can be documented in one laravel
project. Each repository is configured in docdress.repos
like so:
The following attributes can be configured for a repository:
route_prefix
- The route prefix under which the documentation is accessible.default_page
- The default pageversions
- An array containing the branches that should be available in the documentation.default_version
- The current version.subfolder
- The subfolder of the documentation.theme
- The theme that should be used for this repo. Default value:default
.access_token
- Personal access token for private repositories.webhook_token
- Webhook token to allow pulling the repository after a change.
Some of the attributes are discussed in more detail below:
Versions
Every version is representing a branch. Set the default_version
to your
default branch. The versions are specified as branch name and title, like so:
Private repositories
Private repositories require a personal access token with the read permissions for the repository.
Subfolder
You may have the documentation of a project or a package in a subfolder of the
corresponding repository. If a subfolder
is specified in the config, only this
folder is cloned and displayed.
Webhook
If you want the latest version to be automatically updated with every push, you
have to set a webhook with the url _docdress/update
.
Additionally the Content-Type must be set to application/json
.
And the token
from your config must be specified.
Algolia
Algolia Docsearch can be used for the search of your documenation. All you have to do is to specify your application key for the respective repository.
Authorization
You may create gate for a repository in the boot
method of your
AuthServiceProvider
to manage access to the documentation.
Alerts
You may display alerts just like custom-blocks in vuepress. The available alert
types are tip
, warning
, danger
Search Component
By using the x-dd-search-input
component. You can place the algolia search
input in your blade views. The component needs the repo
that should be
searched and the desired version.
Testing
Execute tests via composer:
All versions of docdress with dependencies
cbl/blade-style Version ^1.0
cbl/blade-script Version ^1.0
symfony/browser-kit Version ^5.1
laravel/scout Version ^8.2