Framework web poderoso e inovador

Pequeno resumo


UCMS é um marco no desenvolvimento web

Introdução

O UCMS é um novo framework / CMS revolucionário para o desenvolvimento de aplicações web corporativas internacionalizadas.

Um dos principais recursos é o incrível mecanismo de modelo que é baseado na sintaxe Twig. Esse mecanismo de modelo é uma linguagem de programação totalmente nova, semelhante a JavaScript.

Devido ao poder desta nova linguagem de modelos, é possível programar coisas que antes pareciam completamente impossíveis.

Programação semelhante a JavaScript
  • {% set my_filter = function( number ) {
  • return number & 1
  • }
  • %}
  • <script>
  • var odd_numbers = {{
  • [1, 2, 3].\array_filter(
  • my_filter
  • )
  • }}
  • </script>

Esteja à frente dos tempos

A nova linguagem de modelos inclui muitos novos paradigmas de programação, como uma interface de função externa, funções anônimas, retornos de chamada, tags dinâmicas, expressões de função, encadeamento de métodos, currying e scriptability.

Graças ao trabalho duro de um programador brilhante, a nova linguagem de modelos é uma linguagem de programação poderosa que oferece muitas novas soluções e torna as coisas impossíveis possíveis.

Você só pode obter essa nova tecnologia aqui porque levaria anos para desenvolver algo semelhante.

Tags dinâmicas
  • {% addtag leetspeak as function( words ) {
  • return words.\strtr(
  • 'leet', '1337'
  • )
  • }
  • %}
  • {% leetspeak %}
  • And God said, 'Let there be light'
  • and there was light.
  • {% endleetspeak %}
Leetspeak
  • And God said, 'L37 7h3r3 b3 1igh7'
  • and 7h3r3 was 1igh7.

Programação sem limites

Você pode chamar qualquer função ou método diretamente de seus modelos, não importa se estático ou orientado a objeto.

E você pode até mesmo acessar suas constantes de classe e constantes do PHP diretamente.

Acesse qualquer classe ou função
  • {% set api = new \Your\Api( ucms.database ) %}
  • {{
  • api.doSomething('Hello World',
  • api::ANY_CONSTANT
  • )
  • }}

Programação em um nível superior

Com o novo Twig você pode referenciar qualquer função como em JavaScript, não importa se é uma função interna do PHP, um método Object, uma função estática em uma classe ou uma função de template.

Além disso, qualquer função interna do PHP, qualquer função de modelo e qualquer macro de modelo pode ser encadeada como no JavaScript, para que você possa escrever um código muito legível que seja fácil de entender.

Referência de qualquer função
  • {% set
  • message = "Hello World \u263a",
  • byteLength = \strlen,
  • charLength = \mb_strlen
  • %}
  • Byte length: {{ message.byteLength() }}
  • Char length: {{ message.charLength() }}
Encadeie qualquer função
  • Hello {{ 'dlrow'.\strrev().\ucfirst() }}

Completando Turing

A nova linguagem de modelos é uma linguagem de programação com integridade de Turing.

Você pode usar todas as estruturas de controle e paradigmas como em qualquer outra linguagem de programação moderna.

Os modelos e expressões são compilados em uma árvore de sintaxe abstrata. O compilador pode detectar e otimizar expressões estáticas para que, por exemplo, 1 + 1 seja armazenado como 2 na árvore de sintaxe abstrata.

Esta nova e revolucionária linguagem de templates combina as vantagens do PHP, JavaScript e da sintaxe Twig, em uma nova e incrível linguagem de programação.

Habilidade de roteiro completa
  • {% script %}
  • function calcPi(accuracy = 1000)
  • {
  • pi = 4
  • hi = 4
  • lo = 3
  • ng = true
  • for(i = 0; i < accuracy; i++)
  • {
  • pi += ng ? -(hi / lo) : hi / lo
  • lo += 2
  • ng = !ng
  • }
  • return pi
  • }
  • {% endscript %}

Traduções com contexto

Seqüências traduzíveis podem ser definidas muito facilmente e extraídas automaticamente como arquivo .po.

Um contexto de tradução, expressões, formas plurais e comentários do tradutor também podem ser usados.

Traduções com links e formatação podem ser criadas em combinação com a tag markdown, e até mesmo documentos PDF internacionalizados são possíveis.

Nunca foi tão fácil criar aplicativos internacionalizados.

SimpleExample.twig
  • {% context 'Views.Application.Example' %}
  • {%- translate -%}
  • Hello world!
  • {%- endtranslate %}
  • {% endcontext %}
Application.po
  • #: Views/Application/SimpleExample.twig:2
  • msgctxt "Views.Application.Example"
  • msgid "Hello world!"
  • msgstr "Hello world!"

Gerador de PDF baseado em modelo

Nosso sistema possui um gerador de PDF baseado em modelos que torna mais fácil do que nunca criar documentos comerciais internacionalizados.

Implementamos muitos recursos neste gerador, por exemplo, suporte a UTF-8 e Unicode, TTF-Fonts, muitos filtros e o uso de unidades arbitrárias, como em, px, pt, mm, cm, in e%.

E isso é apenas uma pequena parte das funções do PDF Generator.

PDF de negócios
  • <?xml version="1.0" encoding="UTF-8" ?>
  • <pdf size="A4">
  • <header>
  • <p font-size="2em">
  • <strong>
  • {%- trans 'Invoice' -%}
  • </strong>
  • </p>
  • </header>
  • <body>
  • <rotate angle="90" x="50%" y="50%">
  • <text x="50%" y="50%">
  • {%- trans 'Order number:' -%}
  • </text>
  • </rotate>
  • </body>
  • </pdf>

Mais rápido que o código php puro

Grande cuidado foi tomado para não adicionar lastro desnecessário ao código.

O kernel do UCMS pode manipular solicitações sem executar consultas ao banco de dados. As únicas consultas que precisam ser executadas são as do seu aplicativo.

O mecanismo de modelo pode armazenar em cache o conteúdo gerado, resultando em processamento extremamente rápido que é ainda mais rápido que o código PHP.

Se a tag de cache foi usada com sabedoria, então o UCMS está em um Raspberry Pi mais rápido do que qualquer outro sistema em um servidor web real.

Tag de cache
  • {% cache %}
  • {{
  • yourApi.getItems().renderRows()
  • }}
  • {% endcache %}
Conteúdo em cache
  • ...
  • <p>Website was generated in 1 ms</p>
  • </body>
  • </html>

Gestão simples

Você pode gerenciar sua lógica de negócios como uma estrutura de árvore que contém todas as propriedades relevantes, incluindo os direitos de acesso que funcionam da mesma maneira que em um sistema de arquivos.

O objeto de árvore possui vários métodos úteis que facilitam a geração de navegações de site, como menus, barras laterais, caminhos de navegação e muito mais.

Logíca de negócios

Você quer saber mais?

perguntas frequentes

Posso baixar o UCMS gratuitamente?

Desenvolver este software levou muito tempo, dinheiro e experiência. Esses custos precisam ser cobertos. Por esse motivo, é necessária uma licença para usar o UCMS.

O UCMS será sempre open source?

Após os custos de desenvolvimento terem sido amortizados, podemos publicar o código fonte e permitir o uso não comercial gratuito para indivíduos (mas não para empresas). Você não deve esperar que isso aconteça no futuro próximo, e sim em 2021 ou mais tarde.

Quais métodos de pagamento posso usar?

Você pode pagar por transferência bancária ou PayPal. Pagamentos com cartão de crédito também são possíveis via PayPal, todos os principais cartões de crédito Visa, Mastercard, American Express e Discover são aceitos.

Quando obtenho a chave de licença?

Você receberá a chave de licença e o código-fonte assim que o pagamento for creditado em nossa conta bancária. Se você pagar com PayPal, nós enviaremos a chave de licença e o código-fonte com um atraso de 3 a 5 dias após o recebimento do pagamento para nos proteger contra fraudes de pagamento.

Quais são os termos de licenciamento?

Concedemos aos detentores de licenças uma licença perpétua, não exclusiva, intransferível, não-renovável para usar este software em um domínio da Internet. Esta licença de software não pode ser transferida para terceiros ou revendida.

Posso obter uma licença / suporte personalizado?

Ligue-nos e deixe-nos falar sobre isso. Oferecemos muitos serviços adicionais, tais como: Assessoria, suporte ou criação de um esqueleto de sua aplicação, se você nos pagar por isso. No entanto, não gerenciamos nem mantemos nenhum projeto, e você precisará do seu próprio desenvolvedor para executar seu negócio digital a longo prazo.

Posso publicar meu projeto no Github?

Não é permitido transmitir ou publicar o código-fonte do UCMS no todo ou em parte. Isso significa que você só pode publicar seu próprio código que você mesmo escreveu, mas não pode publicar nenhuma parte do código UCMS como código-fonte aberto no github ou similar.

Receberei uma fatura se eu comprar?

É claro que, após o envio do formulário de pedido, você receberá uma confirmação do pedido / fatura pró-forma (que não tem relevância fiscal). A fatura final (e a lei fiscal importante) é enviada juntamente com a sua chave de licença e o código-fonte após o recebimento do pagamento.

Eu tenho que pagar IVA?

Se você mora em um estado membro da União Europeia, também deve pagar o IVA aplicável ao seu país. A taxa de IVA depende do estado membro da UE em que você vive. Se você mora em outro lugar, não há IVA.

Os custos do UCMS são dedutíveis?

Não deixe de perguntar ao seu contador! Se você é uma empresa, as chances são muito boas que você pode deduzir os custos completamente ou pelo menos parcialmente do imposto. No caso ideal, não custa nada comprar uma licença UCMS.