From 89b09d9fabcd6118a4a2233dc95e3289e3e621a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Georget?= Date: Mon, 31 Oct 2016 11:08:04 +0100 Subject: [PATCH 1/3] Update ROADMAP (ETA v3) --- ROADMAP.md | 69 ++++++++++++++--------------------- packages/strapi/lib/Strapi.js | 2 +- 2 files changed, 29 insertions(+), 42 deletions(-) diff --git a/ROADMAP.md b/ROADMAP.md index f9c1e0f70c..cd8db647f7 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -6,55 +6,42 @@ This document could be influenced by the community feedback, security issues, st # Origins and purposes -The project originated from a desire to build a WordPress alternative by removing the front-end troubles and be an API-centric solution. More and more devices are coming to the market, it become impossible to have only one front-end application to handle each one of them. Each device has a specific front-end issues. However the backend part is still pretty the same. That's why, the APIs were introduced and became very important during the last few years. The APIs are also a new way to make business and involve a community on your product. +Strapi is a project supported by a company called Strapi Solutions. The purpose of Strapi is to provide a powerful way to manage your content across devices through an API. Strapi does not intend to be a MVC framework. Strapi will stay a free and open-source backend project with an user interface to easily manage content. -Strapi is a project supported by a company called Strapi (planned creation date in September/October, 2016). The purpose of Strapi is to provide a powerful way to manage your content across devices through an API. Strapi does not intend to be a MVC framework. Strapi will stay a free and open-source backend project with an user interface to easily manage content. +Strapi aims to be a Content Management Framework. It let's developers hack and quickly develop custom business logic while keeping an administration interface to see what's is going on in the application. Strapi has been designed to build scalable moderns apps using a service-oriented architecture. Strapi will fit with any web project that requires an API. -Strapi aims to be a Content Management Framework. Strapi was built with the "out-the-box" concept in mind. It let's developers hack and quickly develop custom business logic while keeping an administration interface to see what's is going on in the application. +For more details, [please read our blog](http://blog.strapi.io). -In the near future, a marketplace will appear in the Strapi ecosystem. It will allow the community to publish plugins to extend Strapi projects. +# ETA (v3) -# MVP (alpha) -### Framework layer +### α alpha +**Expected release date: 20/12/2016** +**Note:** This version will not be ready for production use. However, we will publish it on npm to allow the community to test it and give us feedback. -* ~~Re-wrote the whole framework in ES6~~ -* ~~Divide framework in isolated parts (core, dictionary, websockets, models)~~ -* ~~Improve performances (reduce codebase, new way to load hooks)~~ -* ~~Developer Mongoose adapter~~ -* ~~Re-integrate the CLI into the core~~ -* ~~Load hook in specific order thanks to a `nextTo` property in the `package.json`~~ -* Load plugins into the server (dictionary, controllers, models) -* Update `strapi-generate-new` to generate the new architecture to embrace plugins -* Develop plugins - * API manager - * Data Manager - * Configurations Manager - * Users & Groups - * Permissions Manager -* Write ressources (documentation, tutorials) +* ~~Rewrite the entire project with ES6.~~ +* Move to Koa2. [(see current status)](https://github.com/strapi/strapi/issues/41) +* ~~Use Mongo as main database.~~ +* ~~Use Joi as validation layer.~~ +* Handle errors with Boom. +* ~~Load plugins.~~ +* ~~Load external hooks.~~ +* Build dashboard layout using React. +* ~~Dynamic configuration values.~~ +* ~~Handle internationalization (i18n).~~ -### Administration layer +**Dashboard features through UI:** -* ~~React structure~~ -* Layout (~~design~~, development) -* Configurations Manager plugin (~~design~~, development) -* API Manager plugin (design, development) -* Data Manager plugin (design, development) -* Users & Groups plugin (design, development) -* Permissions Manager plugin (design, development) +* ~~Edit general settings (Settings Manager).~~ +* Generate a REST API (API Manager). -# MVP (beta) -### Framework +### β beta +**Expected release date: 01/04/2017** -* Integrate realtime events with Socket.io based on server/databases events -* Create a plugin generator -* Create GraphQL plugin +* Load custom hooks. +* Create plugin generator. +**Dashboard features through UI:** -* Move to Koa 2 (waiting async/await native support) -* Use import/export instead of `require()` (waiting Node.js native support) - -### Administration layer - -* Internationalization -* ... +* Edit data (Data Manager). +* Manage users & groups. +* Edit permissions on routes. diff --git a/packages/strapi/lib/Strapi.js b/packages/strapi/lib/Strapi.js index 048fb28ab3..24ad6d4795 100644 --- a/packages/strapi/lib/Strapi.js +++ b/packages/strapi/lib/Strapi.js @@ -50,7 +50,7 @@ class Strapi extends EventEmitter { scope: ['dependencies', 'devDependencies'], replaceString: /^koa(-|\.)/, camelize: true, - lazy: false + lazy: true }); // New Winston logger. From a0b0389e27ecd766ea608a7fbab2cb90683bc16b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Georget?= Date: Mon, 31 Oct 2016 11:13:01 +0100 Subject: [PATCH 2/3] Update ROADMAP (ETA v3) --- ROADMAP.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ROADMAP.md b/ROADMAP.md index cd8db647f7..e148a49f34 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -16,6 +16,7 @@ For more details, [please read our blog](http://blog.strapi.io). ### α alpha **Expected release date: 20/12/2016** + **Note:** This version will not be ready for production use. However, we will publish it on npm to allow the community to test it and give us feedback. * ~~Rewrite the entire project with ES6.~~ From 04132d77e235bb236d3282439b44d7884da5e748 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Georget?= Date: Mon, 31 Oct 2016 11:16:39 +0100 Subject: [PATCH 3/3] Update README --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 08549ec3a7..9a627e5df6 100755 --- a/README.md +++ b/README.md @@ -8,9 +8,9 @@ ## v3.0.0 coming soon... We've been working on a major update to Strapi for several months now, rewriting the core framework and the administration panel. -Some parts of this work have been merged into our master branch. Currently, this is not stable. Please DON'T use the `master` in production. **To run and start your current project, we strongly recommend to use the v1.5.4.** +Some parts of this work have been merged into our master branch. Currently, this is not stable and ready. Please DON'T use the `master` in production. **To run and start your current project, we strongly recommend to use the v1.5.4.** -For more information on the upcoming version including the v2.0 abort, [read our blog post](http://blog.strapi.io/inside-the-box-july-2016/). +For more information on the upcoming version, please take a look to our [ROADMAP](ROADMAP.md). Thanks for your support!