All Projects → webiny → Framework

webiny / Framework

Licence: mit
[NOT MAINTAINED] A full-featured PHP framework powering the server side of Webiny Platform. Can also be used as standalone library.

Projects that are alternatives of or similar to Framework

Lad
👦 Lad is the best Node.js framework. Made by a former Express TC and Koa team member.
Stars: ✭ 2,112 (+1820%)
Mutual labels:  mongodb, framework, bootstrap
Autoserver
Create a full-featured REST/GraphQL API from a configuration file
Stars: ✭ 188 (+70.91%)
Mutual labels:  rest-api, mongodb, framework
Nodejs Socketio Chat App
MEAN Stack & Socket.IO Real-time Chat App | A MEAN stack based Real Time chat application
Stars: ✭ 45 (-59.09%)
Mutual labels:  rest-api, mongodb, bootstrap
Gitmessenger
GitMessenger is github chat app built with socket.io , firebase, nodejs and bootstrap where developers can share code,images and much more 😊
Stars: ✭ 78 (-29.09%)
Mutual labels:  rest-api, bootstrap
Graceful
Elegant Python REST toolkit built on top of falcon
Stars: ✭ 73 (-33.64%)
Mutual labels:  rest-api, framework
Mern Login Signup Component
Minimalistic Sessions based Authentication app 🔒 using Reactjs, Nodejs, Express, MongoDB and Bootstrap. Uses Cookies 🍪
Stars: ✭ 74 (-32.73%)
Mutual labels:  mongodb, bootstrap
Best Of Web Python
🏆 A ranked list of awesome python libraries for web development. Updated weekly.
Stars: ✭ 1,118 (+916.36%)
Mutual labels:  rest-api, framework
Spring Data Mongodb
Provide support to increase developer productivity in Java when using MongoDB. Uses familiar Spring concepts such as a template classes for core API usage and lightweight repository style data access.
Stars: ✭ 1,253 (+1039.09%)
Mutual labels:  mongodb, framework
Bankflix
Aplicação que simula um banco digital, contendo a área do cliente e administrativa, permitindo depósitos e transferências entre contas do mesmo banco. | Application that simulates a digital bank, containing the customer and administrative areas, allowing deposits and transfers between accounts of the same bank.
Stars: ✭ 82 (-25.45%)
Mutual labels:  rest-api, mongodb
Angular Full Stack
Angular Full Stack project built using Angular, Express, Mongoose and Node. Whole stack in TypeScript.
Stars: ✭ 1,261 (+1046.36%)
Mutual labels:  mongodb, bootstrap
Node Typescript Mongodb
node js typescript mongodb express generator yo
Stars: ✭ 96 (-12.73%)
Mutual labels:  rest-api, mongodb
Blog By Nodejs
NodeJs + Mongoose + Express + jQuery + BootStrap + Ejs + Webpack搭建多人博客
Stars: ✭ 72 (-34.55%)
Mutual labels:  mongodb, bootstrap
Awesome Uikit
Collect JS Frameworks, Web components library and Admin Template.
Stars: ✭ 1,136 (+932.73%)
Mutual labels:  framework, bootstrap
Elepy
Elepy, The Headless Content Management Framework
Stars: ✭ 109 (-0.91%)
Mutual labels:  rest-api, mongodb
Flask Restful Authentication
An example for RESTful authentication using nginx, uWSGI, Flask, MongoDB and JSON Web Token(JWT).
Stars: ✭ 63 (-42.73%)
Mutual labels:  rest-api, mongodb
Spring Boot Mongodb Angular Todo App
A Sample App built using Spring Boot, Angular and MongoDB
Stars: ✭ 84 (-23.64%)
Mutual labels:  rest-api, mongodb
Api Restful Con Laravel Guia Definitiva
Repositorio para el código base del curso "API RESTful con Laravel - Guía Definitiva"
Stars: ✭ 95 (-13.64%)
Mutual labels:  rest-api, cache
Php Bootstrap
Let's start by simple design templates' framework together with the famous bootstrap sexy , and makes it easy to work on PHP language , which is well known as a powerful elephant
Stars: ✭ 97 (-11.82%)
Mutual labels:  framework, bootstrap
Ymate Platform V2
YMP是一个非常简单、易用的轻量级Java应用开发框架,涵盖AOP、IoC、WebMVC、ORM、Validation、Plugin、Serv、Cache等特性,让开发工作像搭积木一样轻松!
Stars: ✭ 106 (-3.64%)
Mutual labels:  mongodb, cache
Restfeel
RESTFeel: 一个企业级的API管理&测试平台。RESTFeel帮助你设计、开发、测试您的API。
Stars: ✭ 59 (-46.36%)
Mutual labels:  mongodb, bootstrap

Webiny Framework

This is a set of components for building PHP applications. Each of the component has its own documentation with usage examples and examples of configuration.

Install the framework

The best way to install the framework is using Composer.

composer require webiny/framework

For additional versions of the package, visit the Packagist page.

Requirements

Webiny Framework requires PHP 7.0 or later.

Feedback

We do love feedback, it doesn't matter if it's positive or not, any feedback is much appreciated. So if you have something to tell us, please email us at info{at}webiny.com.

Licence

Webiny Framework is released under MIT license.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Some notes on coding:

  • before writing any code, make sure you have read PSR-1 coding standard (http://www.php-fig.org/psr/psr-1/)
  • each package should have its own exception handler
  • prefer the usage of 'use' keyword instead of writing the full class name with namespace

Git & IDE Configuration

Line endings PHPStorm > File > Line Separators > LF PHPStorm > Preferences > Code Style > General > line separator (for new files) > Unix

Git Execute in terminal: git config --global core.autocrlf input

Bridges and Components

Bridges

Webiny Framework is written in a way that it maximally re-uses other open-source components, so that we don't write the same code over and over again. But in order to make some certain compatibility layer between our components and 3rd party libraries, we introduced Bridges. If a component uses a 3rd party library, it is used over a bridge, where we implement an interface, so if we wish to change the external library, we would just create a new bridge, without the need to refactor the component itself.

Components

This is the list of currently available components:

  • Amazon
    • currently supports implementation of Amazon S3
  • Annotations
    • component for parsing annotations from a class, method or a property
  • Bootstrap
    • MVC bootstrap component
  • Cache
    • provides several caching libraries like Apc, Couchbase, Memcache and Redis
  • ClassLoader
    • a PSR-0, PSR-4 and PEAR class loader
  • Config
    • a very handy library for parsing YAML, INI, JSON and PHP configuration files
  • Crypt
    • library for encoding, decoding and validating hashes
  • Entity
    • MongoDb ODM layer
  • EventManager
    • want to do event-based development, this is a library for you
  • Http
    • library for parsing all data from an HTTP request
    • will soon also support building an HTTP response
  • Image
    • library for image manipulation
  • Logger
    • a component for handling logging during code execution
  • Mailer
    • component for sending emails
  • Mongo
    • MongoDB class wrapper
  • OAuth2
    • library for working with OAuth2, currently supports Facebook, LinkedIn and Google+
  • REST
    • fully featured REST library with caching, security and rate control
  • Router
    • handles defining, parsing, creating and matching url routes
  • Security
    • provides authorization and authentication layer
    • supports Http, Web form, Twitter and OAuth2 authentication
  • ServiceManager
    • want to write truly service based, loosely-coupled code, this library provides that
  • StdLib
    • tired of constantly mixing legacy PHP functions and objective code
    • this component provides objective wrappers for Arrays, Strings, Urls, Files, and DateTime types
  • Storage
    • storage abstraction layer that simplifies the way you work with files and directories
    • supports local file system and Amazon S3
  • TemplateEngine
    • provides a layer for rendering view templates and defining template plugins and manipulators
  • TwitterOAuth
    • library for working with Twitter API using Twitter OAuth

Unit testing

All of the components feature unit tests, but some cover more code, while others cover only a small portion. We intend to change that over time and to have as much as possible of our code covered by unit tests.

To run the unit tests, you need to use the following command:

$ cd path/to/vendor/webiny/framework/
$ composer.phar install
$ phpunit

Note that some components like, Cache, Mailer and Storage might require that you update their test configuration before running the unit tests. Checkout the component readme file for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].