dev{tools}: Para – lekka platforma backendowa do tworzenia aplikacji i API

Jeśli potrzebujesz prostego sposobu na szybkie uruchomienie backendu dla swojej aplikacji — bez budowania wszystkiego od zera — Para może być dokładnie tym, czego szukasz.

To lekki framework backendowy typu open source, który pozwala w kilka minut zbudować REST API, zarządzać danymi i obsługiwać uwierzytelnianie — bez konieczności pisania setek linii kodu infrastrukturalnego.



Czym jest Para?

Para to backend oparty o Java i Spring Boot, który działa w duchu „backend-as-a-service”.
Umożliwia łatwe tworzenie i zarządzanie obiektami danych, integrację z aplikacjami frontendowymi oraz uruchamianie go lokalnie lub w chmurze.

Ciekawostka: choć niektóre źródła rozwijają nazwę jako Pluggable and Reusable Architecture, autor projektu wskazuje, że pochodzi ona od bułgarskiego słowa „pára” (para wodna) – symbolicznie „zasilająca” backend Twojej aplikacji.
➡️ Źródło – GitHub README

Najważniejsze cechy Para:

  • przechowuje i zarządza obiektami (modelami) w stylu NoSQL,

  • zapewnia gotowe mechanizmy uwierzytelniania i RBAC,

  • wspiera relacje między obiektami,

  • udostępnia RESTful API natychmiast po wdrożeniu,

  • obsługuje tagowanie, wyszukiwanie i wersjonowanie danych.

📘 Oficjalna dokumentacja: https://paraio.org/docs/

Z czego się składa?

KomponentOpis
para-coreSilnik backendu (Java) zarządzający danymi, API i logiką.
para-serverSamodzielna aplikacja REST oparta na Spring Boot.
para-clientKlient Java do komunikacji z API Para.
para-jsKlient JS/TS do integracji z aplikacjami frontendowymi (np. React).
para-admin-uiGraficzny panel administracyjny oparty na Angular.

Architektura i komponenty

System Para składa się z kilku współpracujących warstw:

  • Para Server – główny punkt wejścia (Spring Boot), udostępniający REST API.

  • Para Core – logika obiektów, typów, zabezpieczeń i relacji.

  • Storage Layer – przechowywanie danych (np. ElasticSearch, DynamoDB, H2).

  • Client SDKs – integracja z frontendem lub backendem (JS/Java).

  • Admin UI – panel do zarządzania modelami i konfiguracją.

Dzięki modułowości możesz wymienić lub rozszerzyć każdy z komponentów — np. podmienić bazę danych, system logowania, dodać middleware.

Do czego mogę użyć Para?

  • budowa CMS-ów, katalogów, blogów, e-commerce i prostych aplikacji,

  • szybkie tworzenie REST API dla aplikacji mobilnych i SPA,

  • backend do MVP, proof-of-concept, hackathonów,

  • mikroserwis z autoryzacją i relacjami obiektów,

  • backend dla aplikacji JAMstack (React/Vue + Para + CDN).

Jak zacząć? (Quickstart)

1. Uruchomienie Para lokalnie (Docker)


docker run -p 8080:8080 --name para \ -e PARA_ENV=dev \ -e PARA_APP_NAME=app \ -e PARA_SECRET_KEY=mysecret \ erudika/para

Po uruchomieniu REST API będzie dostępne pod adresem:
📍 http://localhost:8080


2. Tworzenie obiektów

📌 Upewnij się, że posiadasz poprawny token JWT (np. po logowaniu).


curl -X POST http://localhost:8080/v1/app/object \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR-JWT-TOKEN" \ -d '{ "type": "person", "name": "Jan Kowalski", "email": "jan@example.com" }'

Otrzymasz obiekt z id, timestamp, metadanymi i możliwością dalszej edycji przez API.


3. Użycie z JavaScript (np. w React)


import { ParaClient } from '@erudika/para-client'; const para = new ParaClient('accessKey', 'secretKey'); para.getAll('person').then(results => { console.log(results); });

📌 Domyślnie dane są paginowane — jeśli chcesz uzyskać więcej wyników, pamiętaj o ustawieniu limitu.

Wbudowane funkcje bezpieczeństwa

  • uwierzytelnianie (OAuth2, Google, GitHub, Facebook),

  • RBAC – role i uprawnienia,

  • szyfrowanie haseł, tokeny JWT,

  • full-text search (ElasticSearch / Lucene),

  • tagowanie i relacje między obiektami,

  • wsparcie dla middleware i hooków (Spring Boot).

Integracja z architekturą

Para działa jako mikroserwis REST – możesz zintegrować go z:

  • frontendem (React, Vue, Angular),

  • systemami auth (np. Keycloak, Auth0),

  • CI/CD (np. GitHub Actions),

  • backendami Node.js, Spring Boot lub .NET.

Wersja self-hosted działa na Dockerze, VPS lub w K8s — masz pełną kontrolę nad danymi i środowiskiem.

Podsumowanie

Para to backend idealny do szybkich wdrożeń, prototypów i lekkich aplikacji.
Daje Ci REST API, uwierzytelnianie, przechowywanie danych i relacje — bez konieczności budowania tego wszystkiego od zera.

✅ REST API w kilka minut
✅ Możliwość pełnej kontroli (self-hosting)
✅ Integracja z frontendem i CI/CD
✅ Bezpieczna architektura oparta o Java/Spring
✅ Gotowe do użycia jako komponent w mikroserwisach

Komentarze