Saltar para o conteúdo

NajaScript: apps nativas, de forma simples.

naja (a cobra, do Python) + JavaScript: uma linguagem feita para criar apps e programas nativos de forma simples, rápida e segura. Compilada, tipada, sem garbage collector. Com o NajaNative, um só código para apps em todas as plataformas — Linux hoje.

app/page.njsx
export default fun Page() {
int count = 0

return (
<div class="p-4 gap-2">
<h1 class="text-3xl font-bold">Count: {count}</h1>
<button class="bg-brand-500 text-black font-bold rounded-lg px-4 py-2"
onClick={() => count += 1}>+1</button>
</div>
)
}

Aprende do zero

Um tutorial para quem está a aprender a programar: output, variáveis, strings, if, ciclos, funções, arrays, mapas, structs — uma coisa por página, com exemplos e o resultado.

NajaNative: a forma do Next.js

app/page.njsx é uma rota, app/layout.njsx a moldura; useState, useEffect, controllers, um router. Widgets nativos, não um browser. Gravas e a app recarrega com o estado guardado.

Pilhas incluídas

najac native new dá-te sign-in, sign-up, um CRUD de users e uma API sobre os mesmos controllers. Migrações, models, seeders, .env, argon2id.

Tailwind nos widgets

As classes que conheces — flex, p-4, rounded-xl, dark:, hover: — viram propriedades dos widgets e CSS do GTK. As tuas cores no naja.toml.

O desktop todo

Notificações, ícone na tray, sons, drag and drop, mais janelas, modais, o tamanho da janela lembrado, WebSockets, HTTP.

Entregar

najac native release: um binário stripped, um .desktop, um .deb, um AppImage e um manifesto Flatpak em dist/.