Formidablejs: 1인 프레임

8145 단어 showdevnodemvcnews

무서운 게 뭐야?
강력함(또는formidablejs)은 백엔드 응용 프로그램을 구축하는 데 사용되는 Laravel의 계발을 받은 API 프레임워크입니다.기본적으로 Imba가 사용되며 JavaScript 및 TypeScript에 대한 네이티브 지원이 있습니다.
Knowledge는 API 프로그램을 구축하는 데 매끄러운 과정을 제공하기 위한 것이지만, InertiaLaravel Mix 은 '1인 프레임워크' 의 느낌을 제공하기 때문에 완전한 창고 프로그램을 구축할 수 있습니다.
Laravel의 많은 기능을 참고하여 엔진 덮개 아래에서 사용했다Fastify.

경외심을 불러일으키는 특징들

데이터베이스
강력한 회사는 SQL 조회와 Redis에 대해 기존의 지원을 가지고 있다.SQL 데이터 계층은 Knex에서 지원합니다.Redis 데이터 레이어는 노드 Redis가 동력을 제공합니다.

이사하다
'강력함'은 간단한 데이터베이스 이전 시스템을 제공하여 사용자가 데이터베이스 모델 정의를 정의하고 공유할 수 있도록 합니다.이것은 데이터베이스 모델이 시종 응용 프로그램 코드와 동기화되는 것을 확보하는 좋은 방법이다.

인증
강력한 성능sessionjwt 기반 어플리케이션을 위한 엔트리 레벨 인증 시스템을 제공합니다.기본적으로 session 기반 인증이 활성화됩니다.session 기반 인증 시스템은 cookies를 사용할 수 있으며 세션 데이터를 memory, file 또는 redis에 저장할 수 있습니다.jwt 기반 인증 시스템은 JWT 영패를 사용하고 인증 데이터를 데이터베이스에 저장할 수 있다.

경로
다른 프레임워크와 마찬가지로 루트는 이미 표준 기능이 되었다.라빌 공유기와 유사한 공유 시스템을 강력하게 제공했다.루트를 쉽게 그룹으로 나누어 특정한 중간부품에 제한할 수 있습니다.

오류 처리
모든 오류를 차단하고 다른 응답을 되돌릴 수 있는 강력한 오류 처리 프로그램 클래스가 있습니다.강력한 Bugsnag 기능도 제공됩니다.

CLI 도구
Craftman은 Professional과 함께 제공되는 명령줄 인터페이스입니다.Craftman은 모든 강력한 응용 프로그램에 글로벌 패키지로 설치되어 있다.응용 프로그램을 구축할 때 도움을 줄 수 있는 유용한 명령을 많이 제공합니다.

프로젝트 설정
첫 번째 작업은 CLI 도구를 설치하는 것입니다.
$ npm i -g @formidablejs/craftsman
CLI 설치가 완료되면 다음 명령을 실행합니다.
$ craftsman new project-name --web
프로젝트 폴더에 cd 넣기:
$ cd project-name
선택 사항: Vuejs 또는 React를 설치하려면 다음 명령을 실행합니다.
$ craftsman inertia
$ npm run mix:dev
모든 작업이 완료되면 다음 명령을 사용하여 응용 프로그램에 서비스를 제공합니다.
$ craftsman serve --dev
실행 후 브라우저에서 http://localhost:3000로 이동하여 프로그램이 성공적으로 만들어졌는지 확인할 수 있습니다.
다음을 확인해야 합니다.


프로젝트 구조
우리 프로젝트가 어떤 모양인지 봅시다.
번호부
묘사/app응용 프로그램의 핵심 코드를 포함합니다./app/Http/Controllers응용 프로그램 컨트롤러를 포함합니다./app/Http/Middleware요청 중간부품을 포함합니다./app/Http/Requests양식 및 API 요청을 포함합니다./app/Http/Modelsbookshelf모형./app/Http/Resolvers응용 프로그램 서비스 분석 프로그램을 포함합니다./bootstrap/cache캐시를 포함하는 프로필과 데이터베이스 설정 파일입니다./config응용 프로그램 구성 파일을 포함합니다./database/migrations어플리케이션 마이그레이션 파일을 저장합니다./public이미지, JavaScript, CSS 등의 자산을 저장합니다./resources/lang언어 파일을 포함합니다./resources/viewsImba 뷰 클래스 파일을 포함합니다./routes응용 프로그램 라우트를 포함합니다./storage/framework핵심 응용 프로그램 데이터를 포함합니다./storage/session응용 프로그램 세션을 포함합니다.

Note: in some cases, you might see more folders; This is dependent on the type of project you created.



데모

첫 번째 노선 만들기
새 라우트를 추가하려면 routes/web 라우팅 파일을 열고 라우팅 파일 아래쪽에 다음 행을 추가합니다.
Route.get '/ping', do 'pong'
지금, 방문할 때 http://localhost:3000/ping, 보아야 합니다. pong
컨트롤러 만들기
위 부분에서 노선을 만드는 방법을 보여 드리겠습니다.이제 디렉터를 만들어 경로에 매핑합니다.
$ craftsman make controller HelloController
만들면 app/Http/Controllers/HelloController를 열 수 있으며 다음 코드를 볼 수 있습니다.
import Controller from './Controller'

export class HelloController < Controller
이제 디렉터에 작업을 만듭니다.
import Controller from './Controller'

export class HelloController < Controller

    def index
        'Hello World'
index 작업이 추가되면 routes/web 파일로 이동하여 새 컨트롤러를 가져올 수 있습니다.
import { HelloController } from '../app/Http/Controllers/HelloController'
컨트롤러를 가져온 후 새 라우트를 추가하여 컨트롤러에서 만든 작업에 매핑할 수 있습니다.
Route.get 'hello', [HelloController, 'store']
지금 방문Hello World에서 보실 수 있을 것입니다http://localhost:3000/hello

For a fullstack demo application with crud operations see: https://github.com/donaldp/pingcrm




결론
강력함은 많은 유용한 특성을 제공하지만 안정적인 발표를 실현하려면 아직 갈 길이 멀다.이제 놀고 오류를 보고하고 가능하면 자신의 힘을 바치면 돼!
파일: https://formidablejs.org
Github:https://github.com/formidablejs
PingCRM 데모: https://github.com/donaldp/pingcrm

좋은 웹페이지 즐겨찾기