Fireback accelerates backend and mobile app development, offering powerful code generation tools and standardized architecture. With seamless backend integration and streamlined workflows, Fireback expedites the creation of robust and scalable apps.
Fireback to framework backendowy, odpowiedni dla większości produktów komercyjnych (zastępca dla Gin, Laravel, Nest.js) - serwer http z połączeniem do bazy danych, który jest wyposażony w potężne narzędzia do generowania kodu oraz gotowe do użycia przepływy i wtyczki. Fireback może tworzyć projekty gotowe do produkcji nawet w ciągu jednego dnia roboczego, dając ci pełną kontrolę nad tym, czego potrzebujesz.
Fireback React to także projekt związany z Fireback, który stosuje te same zasady w budowie interfejsu front-endowego (Web, Mobile i Desktop) wysokiej jakości i szybko.
Fireback Android/IOS to eksperymentalne projekty natywne, do których generujemy dużo kodu, ale moje główne dochody pochodzą z Cordova/Web i backendu, więc to główny cel.
Możesz używać backendu fireback z dowolnymi innymi frameworkami (Xamarin, Angular, Vue.js ...), jeśli chcesz. W końcu to normalny serwer http (POST, GET itp.), który obsługuje dokumentację OpenAPI 3 oraz Postmana, ale generowany przez nas kod jest głównie dla React.js; możesz albo ręcznie kodować front, albo otworzyć zgłoszenie w celu uzyskania wsparcia dla generacji kodu.
Fireback może być używany jako wtyczka lub szablon, to twoj wybór. Zauważ także, że Fireback to projekt produkcyjny, co oznacza, że możesz potrzebować kilku godzin nauki, w przeciwieństwie do prostych projektów "hello world" w Ginie. (Fireback używa GINA).
Najszybsza prezentacja demo, jaką pokazałem, trwała około 7 minut na zbudowanie nowej funkcji i jej wdrożenie.
Masz następujące opcje, aby zainstalować Fireback:
Możesz zainstalować Fireback używając go install github.com/torabian/fireback/cmd/fireback@latest
Spowoduje to zainstalowanie go ze źródła i powinno być dostępne w folderze go/bin
.
Czasami twój folder go/bin
nie jest w twojej ścieżce, musisz go dodać. (Sprawdź także następną sekcję)
Jeśli system zgłasza brak polecenia fireback
, upewnij się, że dokładnie postępowałeś zgodnie z instrukcjami instalacji Go. Zazwyczaj oznacza to, że katalog go/bin w katalogu domowym użytkownika nie jest w zmiennej środowiskowej PATH. Zazwyczaj musisz również zamknąć i ponownie otworzyć wszelkie otwarte wiersze polecenia, aby zmiany w środowisku wprowadzone przez instalator były odzwierciedlone w wierszu polecenia.
Sprawdź wydania na githubie, wydaję je dla głównych systemów operacyjnych. Dla niektórych systemów operacyjnych stworzyłem również instalator, więc możesz z niego skorzystać. Umieść binarny plik i dodaj go do swojej ścieżki, nazwij go fireback
lub fireback.exe
, aby było łatwiej uzyskać dostęp w Powershell, terminalu Maca lub Linuxa.
fireback new --name projectname --moduleName github.com/yourorg/yourproject
Makefile
. Sprawdź go, aby zobaczyć, jakie komendy możesz użyć..vscode
. Musisz zainstalować rozszerzenie https://marketplace.visualstudio.com/items?itemName=emeraldwalk.RunOnSave
, aby ułatwić generowanie i kompilowanie kodu.Tasks: Run Task
, a następnie możesz użyć polecenia Generate new module
, aby utworzyć nowe moduły.Ważne: Możesz potrzebować polecenia go mod tidy
w katalogu twojego projektu.
Ważne: Projekty Fireback nie mają specjalnego systemu budowania. Makefile to wszystko, możesz go modyfikować według swoich preferencji. To czysty projekt golang, więc trzymaj się poleceń go build ...
lub go run ...
.
Powinieneś być w stanie utworzyć swój binarny plik, a Makefile domyślnie umieszcza utworzony binarny plik w twojej ścieżce. Modyfikuj Makefile według własnych preferencji korzystania z golang.
Projekt to tylko aplikacja Go, możesz ją uruchamiać tak, jak chcesz, ale sprawdź Makefile
i cmd/fireback/Makefile
, to wygodne
skrypty do budowy (Tylko na macu w momencie pisania tego tekstu)
https://www.youtube.com/watch?v=G2Wjeq7ZmS0
Fireback to framework programistyczny backend/systemowy, który ma na
celu generowanie backendu w ciągu minut zamiast miesięcy, daje opiniowany sposób struktury oprogramowania i dostarcza proces, napisany w Golang i C++.
Produkty Fireback wykorzystują język Module2 yaml jako podstawę logiki biznesowej, a produkty stworzone za jego pomocą korzystają z automatycznie generowanego SDK dla Androida w Javie, SwiftUI, React.js, z kompletnym dto, działaniami, eksponowaniem RPC.
Fireback zaczyna od konfiguracji zerowej, zawsze będzie skompilowanym oprogramowaniem, zużywa 5MB RAM i waży mniej niż 10MB dla serwera, 30MB dla komputera stacjonarnego, a wersja C++ może być skompilowana dla urządzeń z mniej niż 1MB pamięci na chipie.
Powodem rozpoczęcia tego projektu było zmienienie kierunku działań dla całego rozwoju oprogramowania, w którym uczestniczę przez najbliższe 30 lat, obejmujące między innymi:
Sam Fireback to projekt backendowy, oparty na Golangu, ale w folderze clients
znajdują się kilka innych projektów. Założenie jest takie, że budujemy backend w Go, a front-end w React, aplikacje mobilne na Androidzie i IOSie. Fireback dobrze wspiera inne frameworki, takie jak react native, angular, ... ale nie dostarczamy szablonów. Buduj backend w Fireback, a korzystaj z jego API REST lub generatora SDK, jeśli jest dostępny dla twojego frameworka.
To backend z kilkoma modułami, takimi jak zarządzanie użytkownikami, uprawnienia, generacja kodu oparta na Gin i Gorm. Jest gotowy do produkcji, dostajesz go, klonując to repozytorium.
To szablon front-endu (różni się od generowania kodu React) daje ogólne ekrany aplikacji, logowanie, rejestracja. Będzie aktualizowany z czasem, ale jest wystarczająco niezawodny, aby go użyć.
To zestaw komponentów do budowy aplikacji na Androida. Nie zależy to naprawdę od backendu fireback, ale to szybki start do budowy projektu na Androida. To czysty projekt Androida w Javie bez żadnej modyfikacji struktury Androida. Dodano kilka bibliotek, takich jak RxJava, ... Logowanie, rejestracja, ... i kilka ekranów i aktywności są dostępne, i można je zmodyfikować.
Podobnie jak fireback-android, jest to również szablon do budowy aplikacji IOS za pomocą SWIFT i SWIFTUI. Istnieje cocopod, a także wygenerowane SDK fireback w środku, zainstalowano bibliotekę Promise
, oraz kilka ekranów wprowadzania, itp.
Możesz klonować te projekty niezależnie jako szablony, nawet bez fireback. Ponadto możesz utworzyć aplikację androidową lub iosową z fireback, bez tych projektów, to tylko pomoże ci ruszyć naprzód szybciej, dając kilka ekranów. Ponadto te szablony, nie są "biblioteką". Po sklonowaniu ich, każda aktualizacja, która pochodzi od nas, będzie manualna, z wyjątkiem fireback gen android/ios, który generuje sdk z twojego backendu.
Fireback może również z czasem dodać i ulepszyć obsługę react native, ionic, flutter, istnieje również w pełni napisana w backendzie wersja C++ i Java. Te projekty nie mają być głównym celem fireback, są to moje osobiste narzędzia do obsługi klientów z tymi technologiami.
Fireback to ogólna nazwa, ale odnosi się do kilku produktów w sobie. Fireback mikrousługi to sposób uwierzytelniania innych projektów backendowych, które mogą być napisane w dowolnych innych językach programowania, takich jak node.js, php, itp. Fireback Module2 to język, deklaratywny sposób defini
owania jednostek (zarówno modeli, jak i logiki biznesowej), Fireback Core, który jest źródłem frameworka, który używam wewnętrznie dla projektów klientów, i nie cały zestaw narzędzi jest eksponowany. Fireback dla Androida, to narzędzia Androida napisane w Javie do łączenia się z głównymi produktami Fireback, to samo dotyczy Fireback React i Fireback Swift. React-Iron i React-Native-Iron to dwa szablony dla react i react-native, które są otwartym źródłem, i trochę sposobem na rozpoczęcie projektów react(native?), ale wpływane przez Fireback w każdym razie.
pilatora Go
Pracuję nad rozwojem Fireback każdego dnia, ale potrzebuję czasu na osiągnięcie wszystkich celów. Moje aktualne tempo pracy na projekcie wynosi około 30-60 godzin tygodniowo. Jeśli jesteś zainteresowany, możesz pomóc mi rozwijać Fireback, zwłaszcza pisząc dokumentację, udoskonalając mechanizmy walidacji, tworząc kod dla innych języków programowania. Dziękuję za wsparcie!
Jeśli masz jakiekolwiek pytania, nie wahaj się pytać!