diff --git a/app/sprinkles/core/locale/pt_BR/errors.php b/app/sprinkles/core/locale/pt_BR/errors.php
new file mode 100644
index 000000000..d61465832
--- /dev/null
+++ b/app/sprinkles/core/locale/pt_BR/errors.php
@@ -0,0 +1,54 @@
+ [
+ '@TRANSLATION' => 'Erro',
+
+ '400' => [
+ 'TITLE' => 'Erro 400: Problema na requisição',
+ 'DESCRIPTION' => 'Provavelmente não é sua falta.',
+ ],
+
+ '404' => [
+ 'TITLE' => 'Erro 404: Não encontrado',
+ 'DESCRIPTION' => 'Parece que não conseguimos encontrar o que você estava procurando.',
+ 'DETAIL' => 'Nós tentamos encontrar sua página...',
+ 'EXPLAIN' => 'Nós não conseguimos encontrar a página que você estava procurando.',
+ 'RETURN' => 'De qualquer forma, clique aqui para retornar a página inicial.',
+ ],
+
+ 'CONFIG' => [
+ 'TITLE' => 'Problema na configuração do UsuárioFrosting!',
+ 'DESCRIPTION' => 'Alguns requisitos de configuração do UsuárioFrosting não foram satisfeitas.',
+ 'DETAIL' => 'Alguma coisa não está certa aqui.',
+ 'RETURN' => 'Por favor, corrija os segintes erros, e então recarregue.',
+ ],
+
+ 'DESCRIPTION' => 'Sentimos uma grande perturbação na Força.',
+ 'DETAIL' => 'Aqui está o que temos::',
+
+ 'ENCOUNTERED' => 'Uhhh...alguma coisa aconteceu. Não sabemos o que.',
+
+ 'MAIL' => 'Erro fatal ao tentar enviar email, contate o administrador do seu servidor. Se você for o admin, por favor, verifique o log do UsuárioFrosting..',
+
+ 'RETURN' => 'Clique aqui para retornar para página inicial.',
+
+ 'SERVER' => 'Oops, parece que nosso servidor pode ter cometido algum erro. Se você for um admin, por favor, verifique o PHP ou os logs do UsuárioFrosting.',
+
+ 'TITLE' => 'Perturbação na força',
+ ],
+];
diff --git a/app/sprinkles/core/locale/pt_BR/messages.php b/app/sprinkles/core/locale/pt_BR/messages.php
new file mode 100644
index 000000000..f1cb619fe
--- /dev/null
+++ b/app/sprinkles/core/locale/pt_BR/messages.php
@@ -0,0 +1,122 @@
+ 1,
+
+ 'ABOUT' => 'Sobre',
+
+ 'CAPTCHA' => [
+ '@TRANSLATION' => 'Captcha',
+ 'FAIL' => 'Você não inseriu o código do captcha corretamente.',
+ 'SPECIFY' => 'Insira o captcha',
+ 'VERIFY' => 'Verifique o captcha',
+ ],
+
+ 'CSRF_MISSING' => 'Está faltando o token CSRF. Tente atualizar a página e então submeter novamente?',
+
+ 'DB_INVALID' => 'Não é possível conectar ao banco de dados. Se você for um administrador, por favor, verifique o seu log de erros.',
+ 'DESCRIPTION' => 'Descrição',
+ 'DOWNLOAD' => [
+ '@TRANSLATION' => 'Download',
+ 'CSV' => 'Download CSV',
+ ],
+
+ 'EMAIL' => [
+ '@TRANSLATION' => 'Email',
+ 'YOUR' => 'Seu endereço de email',
+ ],
+
+ 'HOME' => 'Home',
+
+ 'LEGAL' => [
+ '@TRANSLATION' => 'Política Legal',
+ 'DESCRIPTION' => 'Nossa política legal se aplica para o seu uso deste website e nossos serviços.',
+ ],
+
+ 'LOCALE' => [
+ '@TRANSLATION' => 'Locale',
+ ],
+
+ 'NAME' => 'Nome',
+ 'NAVIGATION' => 'Navegação',
+ 'NO_RESULTS' => 'Desculpe, não temos nada aqui.',
+
+ 'PAGINATION' => [
+ 'GOTO' => 'Pular para página',
+ 'SHOW' => 'Mostrar',
+
+ // Paginator
+ // possible variables: {size}, {page}, {totalPages}, {filteredPages}, {startRow}, {endRow}, {filteredRows} and {totalRows}
+ // also {page:input} & {startRow:input} will add a modifiable input in place of the value
+ 'OUTPUT' => '{startRow} para {endRow} de {filteredRows} ({totalRows})',
+ 'NEXT' => 'Próxima página',
+ 'PREVIOUS' => 'Página anterior',
+ 'FIRST' => 'Primeira Página',
+ 'LAST' => 'Última página',
+ ],
+ 'PRIVACY' => [
+ '@TRANSLATION' => 'Política Legal',
+ 'DESCRIPTION' => 'Nossa política legal descreve que tipo de informação nós coletamos de você e como nós iremos usa-la.',
+ ],
+
+ 'SLUG' => 'Slug',
+ 'SLUG_CONDITION' => 'Slug/Condições',
+ 'SLUG_IN_USE' => 'A {{slug}} slug já existe',
+ 'STATUS' => 'Status',
+ 'SUGGEST' => 'Sugerir',
+
+ 'UNKNOWN' => 'Desconhecido',
+
+ // Actions words
+ 'ACTIONS' => 'Ações',
+ 'ACTIVATE' => 'Ativar',
+ 'ACTIVE' => 'Ativo(a)',
+ 'ADD' => 'Adicionar',
+ 'CANCEL' => 'Cancelar',
+ 'CONFIRM' => 'Confirme',
+ 'CREATE' => 'Criar',
+ 'DELETE' => 'Deletar',
+ 'DELETE_CONFIRM' => 'Você tem certeza que deseja deletar isto??',
+ 'DELETE_CONFIRM_YES' => 'Sim, deletar',
+ 'DELETE_CONFIRM_NAMED' => 'Você tem certeza que deseja deletar {{name}}?',
+ 'DELETE_CONFIRM_YES_NAMED' => 'Sim, deletar {{name}}',
+ 'DELETE_CANNOT_UNDONE' => 'Esta ação não pode ser desfeita.',
+ 'DELETE_NAMED' => 'Deletar {{name}}',
+ 'DENY' => 'Rejeitar',
+ 'DISABLE' => 'Desativar',
+ 'DISABLED' => 'Desativado(a)',
+ 'EDIT' => 'Editar',
+ 'ENABLE' => 'Ativar',
+ 'ENABLED' => 'Ativo(a)',
+ 'OVERRIDE' => 'Sobrescrever',
+ 'RESET' => 'Resetar',
+ 'SAVE' => 'Salvar',
+ 'SEARCH' => 'Procurar',
+ 'SORT' => 'Ordenar',
+ 'SUBMIT' => 'Enviar',
+ 'PRINT' => 'Imprimir',
+ 'REMOVE' => 'Remover',
+ 'UNACTIVATED' => 'Inativado(a)',
+ 'UPDATE' => 'Atualizar',
+ 'YES' => 'Sim',
+ 'NO' => 'Não',
+ 'OPTIONAL' => 'Opcional',
+
+ // Misc.
+ 'BUILT_WITH_UF' => 'Construído com UsuárioFrosting',
+ 'ADMINLTE_THEME_BY' => 'Tema por Almsaeed Studio. Todos os direitos reservados',
+ 'WELCOME_TO' => 'Bem vindo ao {{title}}!',
+];
diff --git a/app/sprinkles/core/locale/pt_BR/validate.php b/app/sprinkles/core/locale/pt_BR/validate.php
new file mode 100644
index 000000000..c4c0bbbbc
--- /dev/null
+++ b/app/sprinkles/core/locale/pt_BR/validate.php
@@ -0,0 +1,35 @@
+ [
+ 'ARRAY' => 'Os valores para {{label}} devem estar em um array.',
+ 'BOOLEAN' => "O valor para {{label}} deve ser '0' ou '1'.",
+ 'INTEGER' => 'O valor para {{label}} deve ser um inteiro.',
+ 'INVALID_EMAIL' => 'Endereço de email inválido.',
+ 'LENGTH_RANGE' => '{{label}} deve estar entre {{min}} e {{max}} caracteres de tamanho.',
+ 'MAX_LENGTH' => '{{label}} deve ter no máximo {{max}} caracteres de tamanho.',
+ 'MIN_LENGTH' => '{{label}} deve ter no mínimo {{min}} caracteres de tamanho.',
+ 'NO_LEAD_WS' => 'O valor para {{label}} não pode começar com espaços, tabs, ou outro espaço em branco.',
+ 'NO_TRAIL_WS' => 'O valor para {{label}} não pode terminar com espaços, tabs, ou outro espaço em branco.',
+ 'RANGE' => 'O valor para {{label}} deve estar entre {{min}} e {{max}}.',
+ 'REQUIRED' => 'Por favor, específique um valor para {{label}}.',
+ 'SPRUNJE' => [
+ 'BAD_FILTER' => '{{name}} não é um filtro válido para este Sprunje.',
+ 'BAD_LIST' => '{{name}} não é uma lista válida para este Sprunje.',
+ 'BAD_SORT' => '{{name}} não é um campo de classificação válido para este Sprunje.',
+ ],
+ ],
+];