GithubHelp home page GithubHelp logo

asynclegs / foal Goto Github PK

View Code? Open in Web Editor NEW

This project forked from foalts/foal

0.0 1.0 0.0 28.08 MB

A Web framework to create enterprise-grade Node.JS applications :boom: :rocket:

Home Page: https://foalts.org/

License: MIT License

TypeScript 97.42% HTML 1.46% Shell 0.54% JavaScript 0.58%

foal's Introduction

Logo

๐Ÿ”ฅ A Web framework to create enterprise-grade Node.JS applications ๐Ÿ’ฅ ๐Ÿš€

License: MIT node version npm version Build Status Code coverage Known Vulnerabilities Commit activity Last commit 2FA 2FA

Website - Documentation - Twitter - YouTube

FoalTS is a Node.js framework for building HTTP APIs and Web applications with a rich interface (Angular / React / Vue). It is written in TypeScript and offers many built-in dev tools and components to handle extremely common scenarios. Simple, testable and progressive, Foal accelerates development while leaving you in control of your code.

๐ŸŒ‡ Get started

First install Node.Js and npm.

Create a new app

$ npm install -g @foal/cli
$ foal createapp my-app
$ cd my-app
$ npm run develop

The development server is started! Go to http://localhost:3001 and find our welcoming page!

๐Ÿ‘‰ Continue with the tutorial ๐ŸŒฑ

Screenshot

๐ŸŽฏ Motivation

In recent years Node.js has become one of the most popular servers on the web. And for good reason, it is fast, simple while being powerful and flexible. Creating a server with only a few lines of code has never been easier.

But when it comes to setting up a complete and scalable project, things get harder. You have to put everything in place. The authorization system, database migrations, development tools or even hashing of passwords are just the tip of the iceberg. Working on this is time consuming and may slow down the release frequency or even lead to undesired bugs. As the codebase grows up and the complexity increases, it becomes harder and harder to develop new features and maintain the app.

This is where FoalTS comes in. Based on express, this lightweight framework provides everything needed to create enterprise-grade applications. From the support of TypeScript to the integration of security tools, it offers the basic bricks to build robust webapps. But FoalTS does not pretend to be a closed framework. You can still import and use your favorite librairies from the rich ecosystem of Node.js.

โœ’๏ธ Philosophy

Simple

Keeping things simple is a challenge when creating an application. Simple code is easier to handle and understand, and therefore easier to maintain, debug and extend. Many frameworks, in trying to provide a large number of features and tools, tend to become complex, cumbersome and sometimes incomprehensible. In Foal, the architecture and components are designed to keep the code as simple as possible. Complexity is only used when there is no other option.

Testable

Too often, tests are set aside in web projects. Considered secondary, many frameworks do not encourage developers to write them and often make this task difficult. This is a pity, because writing tests really improves the long-term reliability of the product. They help to detect bugs in advance, prevent regressions and even improve application design as they are developed. FoalTS is different and aims to help developers write unit and acceptance tests. The entire framework provides both the architecture and the tools necessary for this purpose.

Progressive

Building a proof of concept or a global application is not the same thing. The first one tests an idea and must be built quickly. The other is a large production system that must be reliable and serve thousands of customers. They both have different objectives and technical concerns. However, it is highly likely that the PoC built today will one day become the global application of tomorrow, with evolving technical goals and needs. FoalTS is designed to support you along the way. At first, the framework provides a default configuration, lightweight components and practical templates to quickly start a new project. Then, as the application evolves, Foal's components, tools and architecture adapt to allow you to customize and scale your product.

Community Chat

You can join the community chat here.

Contributing

See the contribution guidelines.

License

MIT

foal's People

Contributors

loicpoullain avatar jamesgeorge007 avatar yaaminu avatar rustamwin avatar amylily1011 avatar cr4ftx avatar kingdun3284 avatar bauerarnaud avatar elshazer avatar jrfidellis avatar ichag avatar nihiels avatar pjo336 avatar silvestreperret avatar ejazahm3d avatar finde avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.