Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/brandocms/brando

A CMS of sorts.
https://github.com/brandocms/brando

Last synced: 29 days ago
JSON representation

A CMS of sorts.

Awesome Lists containing this project

README

        


A helping hand.











*EXPERIMENTAL, NOT RECOMMENDED TO USE BEFORE IN MORE STABLE FORM!*

## Install

Start by creating a new Phoenix project:

$ mix phx.new my_project

Run the install script:

$ wget https://raw.githubusercontent.com/brandocms/brando/master/install.sh && chmod +x install.sh && ./install.sh

Go through `config/brando.exs`.

To use Brando's error views, add to your Endpoint's config (in prod.exs):

```elixir
config :my_app, MyApp.Endpoint,
render_errors: [
formats: [html: Brando.ErrorHTML, json: Brando.ErrorJSON], layout: false
],
```

*Remember to switch out your ports and configure SSL in `etc/nginx/prod.conf`*

## Dependencies

* `sharp`/`sharp-cli` for image processing.
Installation instructions: https://github.com/brandocms/brando/issues/183
* `gifsicle` for GIF resizing.

## I18n

Brando uses Gettext for i18n.

To extract your frontend translations:

$ mix gettext.extract

Create your frontend translation directories: (for norwegian)

$ mkdir -p priv/gettext/frontend/no/LC_MESSAGES

Merge frontend translations

$ mix gettext.merge priv/gettext/frontend --locale no --plural-forms=2
$ mix gettext.merge priv/gettext/backend --locale no

## Generators

Generate blueprint

$ mix brando.gen.blueprint

Generate templates:

$ mix brando.gen

## Serve static from DO Spaces

Setup Endpoint for `prod.exs`

```elixir
config :my_app, hmr: false
config :my_app, MyAppWeb.Endpoint,
static_url: [
scheme: "https",
host: "cdn.univers.agency",
path: "/my_app/static",
port: 443
]

config :ex_aws, :s3, %{
access_key_id: System.get_env("AWS_ACCESS_KEY_ID"),
secret_access_key: System.get_env("AWS_SECRET_ACCESS_KEY"),
scheme: "https://",
host: %{"fra1" => "SPACES_NAME.fra1.digitaloceanspaces.com"},
region: "fra1"
}
```

Add to Dockerfile build:

```bash
$ mix brando.static.deploy
```