• Stars
    star
    7,286
  • Rank 5,315 (Top 0.2 %)
  • Language
    TypeScript
  • License
    Other
  • Created almost 7 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Open-source serverless enterprise CMS. Includes a headless CMS, page builder, form builder, and file manager. Easy to customize and expand. Deploys to AWS.



Open-Source Serverless Enterprise CMS

Website | Documentation | Community Slack | Forum | Twitter

Prettier license SemVer PRs Welcome Contributor Covenant Join our Slack community https://www.webiny.com/slack

product-video-2022.mp4

Webiny Serverless CMS includes:

1️⃣ Page Builder - Drag&drop page editor. Pages are prerendered automatically and cached on CloudFront for lightning-fast delivery.

2️⃣ Headless CMS - Headless CMS with a GraphQL API. Build APIs and content models through a UI. It includes content revisions, localization, and fine-grain permission control.

3️⃣ File Manager - Upload files images. Search and organize your assets. It includes a built-in image editor for basic image manipulations.

4️⃣ Form Builder - Build forms with a drag&drop editor. Insert forms through Page Builder into your pages. It has webhook support and ReCaptcha integration.

All Webiny apps can be customized easily to fully fit an enterprise publishing workflow and integrate with leading identity providers like OKTA and Cognito.

🏁 Quick installation guide

  1. Create a Webiny project:

npx create-webiny-project my-new-project

  1. Deploy to your AWS cloud:

yarn webiny deploy

Prerequisites

  • Node.js ^12 || ^14
  • yarn ^1.22.0 || ^2
  • AWS account

For the detailed install guide, please see πŸ‘‰ https://www.webiny.com/docs/tutorials/install-webiny

Need help, having trouble installing, find us on our community slack πŸ‘‰ https://www.webiny.com/slack

πŸ“• Documentation

For complete documentation πŸ‘‰ https://www.webiny.com/docs

🀝 Community & Support

Community Forum. Best for: help with building, discussion about database best practices πŸ‘‰ https://www.webiny.com/slack

GitHub Issues. Best for: bugs and errors you encounter using Webbiny πŸ‘‰ https://github.com/webiny/webiny-js/issues

πŸ’ͺ Contributing

Webiny is all about the community. Please feel free to join in, whether it's fixing bugs, improving our documentation, or simply spreading the word. Please see our Contributing Guidelines, which explain project organization, setup, testing, and other steps. If you need any assistance in contribution, please reach out via our community Slack.

πŸ“œ License

This project is licensed under the terms of the MIT license except for the following modules, which require a Webiny Enterprise license:

  • Multi-tenancy module
  • OKTA integration

Contact [email protected] for more information.

Why are those modules paid? It's a way we support the development of the project!

πŸ‘·β€β™€οΈ When to use Webiny?

Webiny has many features, too many to list to make this readme digestible, so instead of talking about features, here are the common use-cases you can satisfy using Webiny:

  • Headless CMS - Programmatically integrate your apps with Webiny's GraphQL Headless CMS.

  • GraphQL API - You can build a GraphQL API using the Headless CMS, but you can also use the webiny scaffold command to create new GraphQL resolvers where you can add your custom business logic.

  • Marketing landing pages and micro-sites - Using the Page Builder marketing teams can quickly build new websites without knowledge of HTML or CSS.

  • Multi-tenant SaaS applications - Webiny has a robust multi-tenancy layer with built-in data separation. You can build your own SaaS applications on top and let Webiny handle the API, security, and data storage for you.

  • Full-stack serverless applications - Besides using Webiny to manage your content needs, you can expand the existing functionality by creating new full-stack serverless applications on top. Follow this tutorial to build your own full-stack serverless Pinterest clone.

  • Multi-website & multi-language portal - All Webiny apps are multi-tenant by default, meaning with a single instance of Webiny, you can run hundreds of projects and websites from a single code-base.

  • Dynamic Page (coming soon) - We're working on seamless integration between the Headless CMS and the Page Builder, so you can build and publish dynamic pages without a single line of code or build pipelines required. New content is live instantly and visible to the users.

  • Multi-cloud support (coming soon) - At the moment, Webiny only supports AWS, but we have plans to add support for other cloud vendors such as GCP and Azure. Because Webiny uses cloud-native services to run, not containers, this task is not easy, but we have a plan.



❓ FAQ

♦ Why serverless?

We believe serverless is the future of web development. It gives us much more bang for our buck!

♦ Why open-source?

Open-source has two main aspects over SaaS:

  1. It's customizable, unlike being locked in a SaaS solution.
  2. Your data is stored under your rules, in your data center, with your compliance standard inside your security parameter and delivered through your CDN.

♦ How is this enterprise?

  1. Webiny is built to be integrated inside enterprise environments. Being open-source is one part of that solution; the other is that Webiny integrates with enterprise IdPs such as OKTA and Cognito.
  2. Webiny is architected to sustain heavy usage coming from large volumes of users.
  3. Webiny is built on top of fault-tolerant serverless services.
  4. Webiny keeps the data encrypted both in transit and at rest.
  5. In the paid edition, enterprises have access to our SLA-based support and consultancy services.

♦ How fast and scalable is Webiny?

How about a load-test :)

♦ How much does it cost to run Webiny?

Webiny comes in 2 database options, DynamoDB + Elasticsearch and DynamoDB only. The latter option, when looking at all the infrastructure pieces Webiny uses to operate, the consumption of the AWS services fully determines the cost. In the DDB + ES option, there is a minimum ~$25/mo charge to AWS for the Elasticsearch cluster as it's not a consumption-based service.

As part of our performance benchmark, we also benchmarked the cost of the DDB + ES, specifically, Headless CMS read and write operations. So that benchmark is a good starting point to determine your cost.

As a rule of thumb, we recommend the DDB option for small and medium-size projects, which should be cheaper when compared to a solution running on VMs or containers.

♦ Why should my enterprise consider using Webiny?

Top 5 reasons to do so:

  1. Self-hosted: Webiny runs inside your own AWS cloud; you keep control over your data and security perimeter.
  2. Open-source: We released Webiny under the MIT license, so you can customize every aspect of the system to match your needs fully.
  3. Serverless: Webiny runs on AWS services such as Lambda, S3, and DynamoDB, to offer a highly scalable and fault-tolerant infrastructure.
  4. Cost-savings: Cut your infrastructure and operations costs by 60% to 80% compared to solutions running on VMs.
  5. Secure: Webiny follows security best practices by encrypting data both in transit and rest across all services. It integrates with IdPs such as OKTA and Cognito. CodeQL and Dependabot scanning tools ensure code security.

Contributors

🧑 Thanks goes to these wonderful people!

More Repositories

1

Webiny

[NOT MAINTAINED] Main Webiny app responsible for parsing requests and bootstrapping other apps. Includes all the core ReactJs components.
JavaScript
121
star
2

Framework

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

action-conventional-commits

Ensures that all commits are following the conventional-commits standard.
TypeScript
50
star
4

commodo

Commodo is a library of higher order functions (HOFs) that let you create and compose rich data models
JavaScript
46
star
5

webiny-examples

Various demos showing you how make the best of Webiny
TypeScript
39
star
6

write-with-webiny

Webiny developer community writing program. Contribute to the open source movement by writing technical content. And get paid for doing so!!!
JavaScript
33
star
7

FolderBuilder

Folder builder tool to help developers in the planning stage of their projects
CSS
31
star
8

docs.webiny.com

Webiny documentation
JavaScript
29
star
9

github-actions-wac

GitHub Actions - Workflows as Code (WAC)
TypeScript
26
star
10

action-post-run

Enables executing custom commands once a workflow job has ended.
TypeScript
19
star
11

Htpl

PHP Template Engine using nothing more than HTML5 tags.
PHP
11
star
12

StdLib

[READ-ONLY] A PHP library that puts objective wrappers around string, array, url and datetime. (master at Webiny/Framework)
PHP
9
star
13

remove-aws-resources

Cleanup AWS resources created by Webiny
TypeScript
8
star
14

e-commerce-starter

JavaScript
6
star
15

Entity

[READ-ONLY] Mongo ORM for PHP. (master at Webiny/Framework)
PHP
6
star
16

GitSplit

A tool to automatically update readonly github repos, based on a provided master repo.
PHP
6
star
17

nextjs-starter-webiny

A starter for NextJS showcasing how to fetch data using Webiny Headless CMS
JavaScript
6
star
18

AnalyticsDb

[NOT MAINTAINED] A MongoDb powered time-series analytics library for PHP.
PHP
5
star
19

Platform

Webiny Platform is a multi website management platform.
4
star
20

website

JavaScript
4
star
21

OAuth2

[READ-ONLY] PHP component provides wrappers for several OAuth2 systems like Facebook, LinkedIn and Google. (master at Webiny/Framework)
PHP
4
star
22

benchmark

HTML
3
star
23

gatsby-starter-webiny

A starter for Gatsby showcasing how to fetch data using Webiny Headless CMS
JavaScript
3
star
24

ClassLoader

[READ-ONLY] PHP class loader (autoloader) that supports PEAR, PSR-0 and PSR-4 standards. (master at Webiny/Framework)
PHP
3
star
25

Rest

[READ-ONLY] A simple but powerful PHP REST library that doesn't get in the way. Supports rate control, crud, versioning, cache and json output. Create RESTful APIs with ease. (master at Webiny/Framework)
PHP
3
star
26

StaticRender

An app that renders your javascript/reactjs app server side when a request comes from a bot or a crawler.
JavaScript
2
star
27

Config

[READ-ONLY] PHP `Config` component creates `ConfigObject` instances from config files. Currently supported formats: INI, JSON, PHP, YAML and custom drivers. (master at Webiny/Framework)
PHP
2
star
28

NotificationManager

[NOT MAINTAINED] Webiny app that manages notifications. For now supports email notifications and slack messages.
JavaScript
2
star
29

Cache

[READ-ONLY] `Cache` is a PHP component give you ability to store different information into memory for a limited time. Supports memcache, APC, Couchbase and Redis. (master at Webiny/Framework)
PHP
2
star
30

CronManager

[NOT MAINTAINED] Webiny app to help you manage cron jobs and view the details regarding their execution.
JavaScript
2
star
31

predefined-blocks

A free library of over 100+ pre-built visual blocks for Webiny Page Builder
TypeScript
2
star
32

Amazon

[READ-ONLY] PHP wrapper for Amazon Web Services SDK. Currently only S3 component is being used. (master at Webiny/Framework)
PHP
2
star
33

Cli

[NOT MAINTAINED] Webiny CLI provides a simple interface to setup Webiny Platform, work with apps, modules, build, test and deploy your projects.
JavaScript
2
star
34

Mailer

[READ-ONLY] The `Mailer` is a PHP component that enables you to send emails using different supported protocols and functions (SMTP, mail(), sendmail). (master at Webiny/Framework)
PHP
2
star
35

webiny-bootstrap-react-portfolio

Webiny bootstrap react portfolio
TypeScript
2
star
36

BackupService

Simple PHP library to create and manage backups, and store them to AWS S3 bucket. It backups both files and MongoDb databases.
PHP
2
star
37

SystemMonitor

[NOT MAINTAINED] Webiny app that provide visibility into resource utilization of your servers as well as the performance of the APIs.
JavaScript
2
star
38

Annotations

[READ-ONLY] This simple PHP component lets you read/parse annotations/phpdoc assigned to a `class`, `method` or a `property`. (master at Webiny/Framework)
PHP
2
star
39

Storage

[READ-ONLY] Storage Component is a PHP storage abstraction layer that simplifies the way you work with files and directories. Supports Amazon AWS S3 and others. (master at Webiny/Framework)
PHP
2
star
40

Crypt

[READ-ONLY] The `Crypt` component provides PHP methods for generating random numbers and strings, also, password hashing and password hash verification and methods for encryption and decryption of strings. (master at Webiny/Framework)
PHP
2
star
41

Router

[READ-ONLY] PHP router component is used for mapping defined paths/urls to appropriate controllers or services. (master at Webiny/Framework)
PHP
2
star
42

Bootstrap

[READ-ONLY] PHP MVC bootstrap component for Webiny Framework. (master at Webiny/Framework) http://www.webiny.com/
PHP
1
star
43

FileManager

UI for managing all system files
JavaScript
1
star
44

coding-challenge-full-stack

TypeScript
1
star
45

WebsiteAnalytics

Library that gathers common analytics data about your website visitors
PHP
1
star
46

ServiceManager

[READ-ONLY] PHP component that enables you to define services and re-use them in any part of your code. With this component you can solve any dependency injection problems you might have. (master at Webiny/Framework)
PHP
1
star
47

Insight

App for tracking and scoring user activities. Helps you identify your power users.
JavaScript
1
star
48

Image

[READ-ONLY] PHP image manipulation library. You can crop, rotate, resize, create thumbnails. (master at Webiny/Framework)
PHP
1
star
49

Login

[NOT MAINTAINED] RESTful login application.
PHP
1
star
50

custom-website-context-example

Demonstrate the use of custom React contexts in the Website app, and how page elements can hook into them.
TypeScript
1
star
51

Hrc

Cache management layer where cache rules are based on incoming HTTP request.
PHP
1
star
52

webiny-theme-template

Scaffolding for building a new Webiny CMS theme
CSS
1
star
53

EventManager

[READ-ONLY] EventManager is a PHP component that allows you to easily manage events throughout your application. (master at Webiny/Framework)
PHP
1
star
54

webiny-semantic-release

A tool for automated publishing of semantically correct versions of your packages.
JavaScript
1
star
55

AppInstaller

Composer plugin to install Webiny apps
PHP
1
star
56

Logger

[READ-ONLY] PHP PSR-3 log component. You can use sockets, email and other types for login different information. (master at Webiny/Framework)
PHP
1
star
57

BackupApp

[NOT MAINTAINED] Webiny app that automatically backups your files and database to S3 on a daily, weekly and monthly basis.
JavaScript
1
star
58

SAM

Scripts and Actions Manager - manage your frontend 3rd JavaScript via a UI
JavaScript
1
star
59

Http

[READ-ONLY] Http is a PHP component provides an objective approach to working with HTTP request, response and cache control. (master at Webiny/Framework)
PHP
1
star
60

TemplateEngine

[READ-ONLY] PHP `TemplateEngine` component provides a layer for rendering view templates. Currently supports Smarty, but you can easily integrate Twig or some other. (master at Webiny/Framework)
PHP
1
star
61

Cms

Webiny Content Management System
JavaScript
1
star
62

Demo

[NOT MAINTAINED] Demo app for Webiny platform.
JavaScript
1
star
63

Mongo

[READ-ONLY] MongoDB PHP driver/layer. (master at Webiny/Framework)
PHP
1
star
64

Security

[READ-ONLY] The PHP security component is a layer that takes care of the authentication and authorization processes for you. (master at Webiny/Framework)
PHP
1
star
65

TwitterOAuth

[READ-ONLY] PHP component provides a wrapper for Twitter OAuth server. (master at Webiny/Framework)
PHP
1
star