Website: Content refactor

- Hide sidebar in pages visible in the top nav, except for Docs
- Create an "About" page, featuring the design principles
- Update components illustration
- Move the "What's new in Flamenco 3" page in the FAQ
- Add TOD to the FAQ
- Tweak homepage layout to use two columns
- Styling: slightly reduce max page width (around 12 words per line)
- Styling: tweak padding for titles and paragraphs
This commit is contained in:
Francesco Siddi 2023-05-06 03:27:21 +02:00
parent 1f8301a575
commit 8da71a323f
15 changed files with 182 additions and 161 deletions

View File

@ -41,23 +41,25 @@ software. Development is supported by the Blender project.
Flamenco consists of a few components and requires almost no configuration Flamenco consists of a few components and requires almost no configuration
to be used in production. to be used in production.
<---> {{< /columns >}}
{{< columns >}}
### Easy Customization ### Easy Customization
Designed to be customizable, Flamenco allows TDs to specify Designed to be customizable, Flamenco allows TDs to specify
Job Types using the JavaScript language and seamlessly fit into the pipeline. Job Types using the JavaScript language and seamlessly fit into the pipeline.
{{< /columns >}} <--->
{{< columns >}}
### Cross-platform and Self-hosted ### Cross-platform and Self-hosted
Flamenco runs on all major operating system, and is fully hosted on your own hardware. Flamenco runs on all major operating system, and is fully hosted on your own hardware.
Your data is yours, and yours alone. Your data is yours, and yours alone.
<---> {{< /columns >}}
{{< columns >}}
### Robust Technology ### Robust Technology

View File

@ -0,0 +1,102 @@
---
title: About
weight: 1
aliases:
- /design-principles/
geekdocNav: false
geekdocHidden: true
---
{{< columns >}} <!-- begin columns block -->
Flamenco is a lightweight, cross-platform framework to dispatch and schedule rendering jobs for smaller teams, or individuals.
[Blender Studio][studio] uses Flamenco in production with a handful of servers
(scaling up to hundreds of servers on demand), and combines those with desktop
workstations when they're not used by the artists.
The Flamenco project distributes executables and a Blender add-on
to install and run ([downloads][downloads]).
As the Blender.org project is built on free and Open Source software, Linux is
the main platform Flamenco is developed against. Windows and MacOS will also be
supported, but on a best-effort basis with help from the community.
[downloads]: {{< ref "/download/" >}}
[studio]: https://studio.blender.org/
<---> <!-- magic separator, between columns -->
![Flamenco Configuration](flamenco_components.png)
Example of a Flamenco configuration.
{{< /columns >}}
## Design Principles
The following principles guide the design of Flamenco:
{{< columns >}} <!-- begin columns block -->
### Blender.org Project
Flamenco is a true blender.org project. This means that it's Free and Open
Source, made by the community, lead by Blender HQ. Its development will fall
under the umbrella of the [Pipline, Assets & IO][PAIO] module.
[PAIO]: https://projects.blender.org/blender/blender/wiki/Module:%20Pipeline,%20Assets%20&%20I/O
### Minimal Authentication & Organisation
Because Flamenco is aimed at small studios and individuals, it won't offer
much in terms of user authentication, nor the organisation of users into groups.
[Custom job types][jobtypes] can be used to attach arbitrary metadata to jobs,
such as the submitter's name, a project identifier, etc.
[jobtypes]: {{< ref "/usage/job-types" >}}
### Minimize External Components
Running Flamenco should be extremely simple. This means that it should depend
on as few external packages as possible. Apart from the Flamenco components
themselves, all you need to install is [Blender][blender].
The downside of this is that development might take longer, as some things
that an external service could solve need to be implemented. This trade-off of
developer time for simplicity of use is considered a good thing, though.
[blender]: https://www.blender.org/
<---> <!-- magic separator, between columns -->
### No Errors, Guide Users To Success
Instead of stopping with a description of what's wrong, like "no database
configured", Flamenco should show something helpful in which you're guided
towards a working system.
### Customisable
Studio pipeline developers / TDs should be able to customise the behaviour of
Flamenco. They should be able to create new [job types][jobtypes], and adjust
existing job types to their needs. For this, Flamenco uses JavaScript to convert
a job definition like "*render this blend file, frames 1-100*" into individual
tasks for computers to execute.
[jobtypes]: {{< ref "/usage/job-types" >}}
### Work offline
Like Blender itself, Flamenco should be able to fully work offline. That is,
work without internet connection. If any future feature should need such a
connection, that feature should always be optional, and be disabled by default.
### Data Storage
Data should be stored as plain files whenever possible. Where a higher level
of coordination is required, an embedded database can be used; currently
Flamenco uses [SQLite][sqlite] for this.
[sqlite]: https://pkg.go.dev/modernc.org/sqlite
{{< /columns >}}

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

View File

@ -1,4 +1,5 @@
--- ---
title: Development title: Development
weight: 100 weight: 100
geekdocCollapseSection: true
--- ---

View File

@ -1,6 +1,8 @@
--- ---
title: Get Involved title: Get Involved
weight: 2 weight: 2
geekdocNav: false
geekdocHidden: true
--- ---
Flamenco is a Free and Open Source project, developed in public under the GPL license. Flamenco is a Free and Open Source project, developed in public under the GPL license.

View File

@ -1,6 +1,8 @@
--- ---
title: Download title: Download
weight: 2 weight: 2
geekdocNav: false
geekdocHidden: true
--- ---
Download Flamenco for your platform here. Each download contains both Flamenco Download Flamenco for your platform here. Each download contains both Flamenco

View File

@ -1,10 +1,35 @@
--- ---
title: Frequently Asked Questions title: Frequently Asked Questions
weight: 10 weight: 10
geekdocNav: false
geekdocHidden: true
--- ---
{{< toc format=html >}}
## What is new in Flamenco 3?
Flamenco was pretty much rebuilt from scratch between versions 2 and 3. One of
the major goals of Flamenco 3 is to simplify the installation & use.
Compared to version 2, Flamenco 3:
- no longer requires an online component; Flamenco Server has been removed.
- no longer requires you to install & configure a database.
- works 100% on your own infrastructure.
- just has two executables for you to run (Manager and Worker).
- has its own dedicated Blender add-on, which can be downloaded directly from Flamenco Manager.
- supports [custom job types][custom-jobs] written in JavaScript.
- comes bundled with FFmpeg; you only need to install Blender.
[custom-jobs]: {{< ref "usage/job-types" >}}
### Flamenco 3 Change Log
The more interesting changes between Flamenco 3 versions are listed in the [changelog][changelog].
[changelog]: https://projects.blender.org/studio/flamenco/src/branch/main/CHANGELOG.md
This is a list of frequently asked questions, with their answers. It's by no
means an exhaustive list.
## I use a mix of different operating systems, can I still use Flamenco? ## I use a mix of different operating systems, can I still use Flamenco?

View File

@ -1,105 +0,0 @@
---
title: Mission & Design
weight: 1
aliases:
- /design-principles/
resources:
- name: components
src: flamenco_components.png
title: Flamenco Components
---
Flamenco is a lightweight, cross-platform framework to dispatch and schedule rendering jobs for smaller animation studios and individuals at home.
## Target Audience
Flamenco is meant for **smaller animation studios and individuals** at home.
Think of roughly **1-10 artists** using it, and **1-100 computers** attached to
the farm to execute tasks. [Blender Studio][studio] uses a handful of servers,
and combines those with various desktop machines when they're not used by the
artists.
There is no need to compile or build anything. The Flamenco project distributes
executables and a Blender add-on for you to install and run ([downloads][downloads]).
[studio]: https://studio.blender.org/
[downloads]: {{< ref "/download/" >}}
## Design Principles
The following principles guide the design of Flamenco:
Blender.org Project
: Flamenco is a true blender.org project. This means that it's Free and Open
Source, made by the community, lead by Blender HQ. Its development will fall
under the umbrella of the [Pipline, Assets & IO][PAIO] module.
[PAIO]: https://projects.blender.org/blender/blender/wiki/Module:%20Pipeline,%20Assets%20&%20I/O
Minimal Authentication & Organisation
: Because Flamenco is aimed at small studios and individuals, it won't offer
much in terms of user authentication, nor the organisation of users into groups.
[Custom job types][jobtypes] can be used to attach arbitrary metadata to jobs,
such as the submitter's name, a project identifier, etc.
[jobtypes]: {{< ref "/usage/job-types" >}}
Minimize External Components
: Running Flamenco should be extremely simple. This means that it should depend
on as few external packages as possible. Apart from the Flamenco components
themselves, all you need to install is [Blender][blender].
: The downside of this is that development might take longer, as some things
that an external service could solve need to be implemented. This trade-off of
developer time for simplicity of use is considered a good thing, though.
[blender]: https://www.blender.org/
No Errors, Guide Users To Success
: Instead of stopping with a description of what's wrong, like "no database
configured", Flamenco should show something helpful in which you're guided
towards a working system.
Customisable
: Studio pipeline developers / TDs should be able to customise the behaviour of
Flamenco. They should be able to create new [job types][jobtypes], and adjust
existing job types to their needs. For this, Flamenco uses JavaScript to convert
a job definition like "*render this blend file, frames 1-100*" into individual
tasks for computers to execute.
Work offline
: Like Blender itself, Flamenco should be able to fully work offline. That is,
work without internet connection. If any future feature should need such a
connection, that feature should always be optional, and be disabled by default.
Data Storage
: Data should be stored as plain files whenever possible. Where a higher level
of coordination is required, an embedded database can be used; currently
Flamenco uses [SQLite][sqlite] for this.
[sqlite]: https://pkg.go.dev/modernc.org/sqlite
## Supported Platforms
As the Blender.org project is built on free and Open Source software, Linux is
the main platform Flamenco is developed against. Windows and MacOS will also be
supported, but on a best-effort basis with help from the community.
## Infrastructure
Setting up a render farm is not as simple as pushing a button, but Flamenco aims
to keep things as simple as possible.
What you need to run Flamenco is:
- One or more computers to do the work, i.e. running **Flamenco Worker**. You'll
probably also want to install [Blender][blender] there.
- A computer to run the central software, **Flamenco Manager**. This could be
one of the above computers, or a dedicated one.
- A local network with **file sharing** already set up, so that the above
computers can all reach the same set of files.
[blender]: https://www.blender.org/
{{< img name="components" size="small" lazy=false >}}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 300 KiB

View File

@ -2,3 +2,20 @@
title: Third-Party Jobs title: Third-Party Jobs
weight: 30 weight: 30
--- ---
This section contains third-party job types for Flamenco. These have been
submitted by the community. If you wish to contribute, consider joining the
[Blender Chat channel][flamencochannel] and chime-in there.
## How can I create my own Job Type?
This is described [Job Types][jobtypes]. It is recommended to use the
[built-in scripts][built-in-scripts] as examples and adjust them from there.
## Third-Party Job Types
{{< flamenco/toc-children >}}
[jobtypes]: {{< ref "usage/job-types" >}}
[built-in-scripts]: https://projects.blender.org/studio/flamenco/src/branch/main/internal/manager/job_compilers/scripts
[flamencochannel]: https://blender.chat/channel/flamenco

View File

@ -1,21 +0,0 @@
---
title: Available Third-Party Jobs
weight: 1
---
This section contains third-party job types for Flamenco. These have been
submitted by the community. If you wish to contribute, consider joining the
[Blender Chat channel][flamencochannel] and chime-in there.
## How can I create my own Job Type?
This is described [Job Types][jobtypes]. It is recommended to use the
[built-in scripts][built-in-scripts] as examples and adjust them from there.
## Third-Party Job Types
{{< flamenco/toc-children >}}
[jobtypes]: {{< ref "usage/job-types" >}}
[built-in-scripts]: https://projects.blender.org/studio/flamenco/src/branch/main/internal/manager/job_compilers/scripts
[flamencochannel]: https://blender.chat/channel/flamenco

View File

@ -3,6 +3,17 @@ title: Quickstart
weight: 0 weight: 0
--- ---
What you need to run Flamenco is:
- One or more computers to do the work, i.e. running **Flamenco Worker**. You'll
probably also want to install [Blender][blender] there.
- A computer to run the central software, **Flamenco Manager**. This could be
one of the above computers, or a dedicated one.
- A local network with **file sharing** already set up, so that the above
computers can all reach the same set of files.
[blender]: https://www.blender.org/
In broad terms, to render with Flamenco, follow these steps: In broad terms, to render with Flamenco, follow these steps:
1. [Download Flamenco][download]. 1. [Download Flamenco][download].

View File

@ -1,27 +0,0 @@
---
title: What is New in Flamenco 3
weight: 5
---
Flamenco was pretty much rebuilt from scratch between versions 2 and 3. One of
the major goals of Flamenco 3 is to simplify the installation & use.
Compared to version 2, Flamenco 3:
- no longer requires an online component; Flamenco Server has been removed.
- no longer requires you to install & configure a database.
- works 100% on your own infrastructure.
- just has two executables for you to run (Manager and Worker).
- has its own dedicated Blender add-on, which can be downloaded directly from Flamenco Manager.
- supports [custom job types][custom-jobs] written in JavaScript.
- comes bundled with FFmpeg; you only need to install Blender.
[custom-jobs]: {{< ref "usage/job-types" >}}
{{< button size="large" relref="usage/quickstart/" >}}Quickstart{{< /button >}}
## Flamenco 3 Change Log
The more interesting changes between Flamenco 3 versions are listed in the [changelog][changelog].
[changelog]: https://projects.blender.org/studio/flamenco/src/branch/main/CHANGELOG.md

View File

@ -1,9 +1,12 @@
--- ---
header: header:
- name: About
ref: /about
external: false
- name: Download - name: Download
ref: /download ref: /download
external: false external: false
- name: Quickstart - name: Documentation
ref: /usage/quickstart ref: /usage/quickstart
external: false external: false
- name: FAQ - name: FAQ

View File

@ -128,6 +128,14 @@ body {
font-family: var(--font-family); font-family: var(--font-family);
} }
h3 {
padding-top: 1rem;
margin-bottom: 0.5rem;
}
.container {
max-width: 70rem;
}
.gdoc-header { .gdoc-header {
border-bottom: none; border-bottom: none;
@ -168,4 +176,5 @@ body {
article p { article p {
line-height: 28px; line-height: 28px;
margin-top: 0;
} }