Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fabrix-app/fabrix
Strongly Typed Modern Web Application Framework for Node.js and Browsers
https://github.com/fabrix-app/fabrix
fabrix framework nodejs spool typescript
Last synced: 7 days ago
JSON representation
Strongly Typed Modern Web Application Framework for Node.js and Browsers
- Host: GitHub
- URL: https://github.com/fabrix-app/fabrix
- Owner: fabrix-app
- License: other
- Created: 2018-06-18T14:40:57.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-01-07T06:13:53.000Z (almost 2 years ago)
- Last Synced: 2024-12-15T16:47:06.051Z (19 days ago)
- Topics: fabrix, framework, nodejs, spool, typescript
- Language: JavaScript
- Homepage:
- Size: 1.46 MB
- Stars: 108
- Watchers: 6
- Forks: 5
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
[![Gitter][gitter-image]][gitter-url]
[![NPM version][npm-image]][npm-url]
[![Build Status][ci-image]][ci-url]
[![Test Coverage][coverage-image]][coverage-url]
[![Dependency Status][daviddm-image]][daviddm-url]
[![Follow @FabrixApp on Twitter][twitter-image]][twitter-url]Fabrix is a strongly typed modern web application framework for Node.js or even Browsers. It builds on the pedigree of [Rails](http://rubyonrails.org/) and [Grails](https://grails.org/) to accelerate development by adhering to a straightforward, convention-based, API-driven design philosophy.
_Note: Because Fabrix is lightweight and easily extendable, it's also very __very__ fast and well suited for function based environments._
## Getting Started
#### Install
_Note: The CLI is under construction, search for [example apps](https://github.com/fabrix-app/example-app) in the meantime_Install the Fabrix CLI. This will help you generate a Fabrix app and more.
```sh
$ npm install @fabrix/fab-cli -g
```#### Generate A New Fabrix App
```sh
$ fab app
```#### Start Sewing
Fabrix uses a CLI to generate scaffolding for new
applications, and to create resources inside the application.```sh
$ fab --helpUsage:
fabGenerators:
Create New App
fab appCreate New Model
fab modelCreate New Controller
fab controllerCreate New Policy
fab policyCreate New Service
fab service
Create New Spool
fab spool
```#### Run
Once installation is complete, begin weaving!
```sh
$ npm run compile && node dist/server.js
```or simply
```sh
$ npm start
```#### Sew on and Sew Forth!
Fabrix is really focused on bringing great libraries together in congruent ways. So if you have something like a web [scrapping library](https://github.com/fabrix-app/spool-scraper), then it's easy to implement that as a Spool and share it with the ever growing fabrix ecosystem.## Spools
[Spools](https://github.com/search?q=topic%3Aspools+org%3Afabrix-app&type=Repositories) extend the framework's
capabilities and allow developers to leverage existing ecosystem tools through a simple and well-defined API. New features, behavior, APIs, and other functionality can be added to the Fabrix framework through Spools.Many Fabrix installations will include some of the following Spools:
- [router](https://github.com/fabrix-app/spool-router)
- [errors](https://github.com/fabrix-app/spool-errors)
- [i18n](https://github.com/fabrix-app/spool-i18n)
- [repl](https://github.com/fabrix-app/spool-repl)
- [express](https://github.com/fabrix-app/spool-express)
- [sequelize](https://github.com/fabrix-app/spool-sequelize)## Compatibility
- Windows, Mac, and Linux
- Node 8.0 and newer## Documentation
See [**fabrix.app/docs**](http://fabrix.app/docs) for complete documentation.
## More Resources
#### Tutorials
Coming soon!#### Videos
Coming soon!#### Support
- [Live Gitter Chat](https://gitter.im/fabrix-app/Lobby)
- [Twitter](https://twitter.com/FabrixApp)
- [Fabrix.app Website](http://fabrix.app/support)
- [Stackoverflow](http://stackoverflow.com/questions/tagged/fabrix)## FAQ
See https://github.com/fabrix-app/fabrix/wiki/FAQ
## Contributing
We love contributions! Please check out our [Contributor's Guide](https://github.com/fabrix-app/fabrix/blob/master/.github/CONTRIBUTING.md) for more
information on how our projects are organized and how to get started.## Development
Fabrix uses a continuous integration process and all tests must pass for Fabrix to release a new version. CircleCI releases a new version when a PR is merged into master. For local development, you can download [CircleCI's local development tools](https://circleci.com/docs/2.0/local-cli/#installing-the-circleci-local-cli-on-macos-and-linux-distros) and run local tests before submitting a Pull Request.Fabrix maintains a high score of coverage tests, any Pull Request should have well written Integration and Unit tests that increase the overall coverage score.
### Browser Support
Browser support provided by Webpack is on it's way.`webpack --config ./test-browser/webpack.config.js`
## License
[MIT](https://github.com/fabrix-app/fabrix/blob/master/LICENSE)## Legacy
Fabrix would not have been possible without the substantial work done by the [Trails.js team](https://github.com/trailsjs). While Fabrix maintains a different code base and system of best practices, none of this would have been possible without the contributions from the Trails community.[npm-image]: https://img.shields.io/npm/v/@fabrix/fabrix.svg?style=flat-square
[npm-url]: https://npmjs.org/package/@fabrix/fabrix
[ci-image]: https://img.shields.io/circleci/project/github/fabrix-app/fabrix/master.svg
[ci-url]: https://circleci.com/gh/fabrix-app/fabrix/tree/master
[daviddm-image]: http://img.shields.io/david/fabrix-app/fabrix.svg?style=flat-square
[daviddm-url]: https://david-dm.org/fabrix-app/fabrix
[gitter-image]: http://img.shields.io/badge/+%20GITTER-JOIN%20CHAT%20%E2%86%92-1DCE73.svg?style=flat-square
[gitter-url]: https://gitter.im/fabrix-app/Lobby
[twitter-image]: https://img.shields.io/twitter/follow/FabrixApp.svg?style=social
[twitter-url]: https://twitter.com/FabrixApp
[coverage-image]: https://img.shields.io/codeclimate/coverage/github/fabrix-app/fabrix.svg?style=flat-square
[coverage-url]: https://codeclimate.com/github/fabrix-app/fabrix/coverage