Github project here: https://github.com/frontity/frontity/projects/1
Feel free to edit this post when you finish something.
Roadmap
-
Repository organization
- - To monorepo or not to monorepo.
- - Configure releases with lerna.
- - Configure Travis.
- - Configure Jest.
- - Configure TypeScript.
- - Configure Conventional Changelog.
-
- Include an
examples
folder and refactor@frontity/core
urls.
-
Build phase
- - Babel configuration for module, es5 and node [#PR].
- - Wepack configuration for development and production [#PR].
- - Produce both es5 and module bundles [#PR].
- - Integrate Koa inside server [#PR].
-
- Create production
dev
script [#PR]. -
- Create production
build
andserve
scripts [#PR]. - - Generate all entry files with correct package imports for each mode.
-
Serve phase
- - Hot Module Replacement [#PR].
- - Integrate with Loadable Components (code splitting) [#PR].
- - Serve both es5 and module bundles.
- - Serve static files from Koa [#PR].
- - Make server bundle ready for serverless [#PR].
- - Import the correct packages on each bundle.
- - Load settings on demand.
-
- Render
Root
andFills
components from packages. - - Integrate SSR with Emotion.
- - Integrate SSR with React-Helmet.
-
- Create default templates (both
html
andamp
) - - Create store for the settings.
- - Create store for the build.
- - Create Overmind store in the server.
- - Create Overmind store in the client.
-
State Manager
-
- Create
connect
. - - Integrate state.
- - Integrate actions.
- - Integrate libraries.
-
- Create
-
@frontity/file-settings
- - Decide on a final schema.
-
- Create types for
frontity.settings.js
. - - Create APIs to get packages and settings in the SSR.
-
@frontity/wp-source
- - Figure out how to do the URL discovery.
- - Decide on a data schema.
- - Create APIs to fetch and retrieve data.
-
@frontity/tiny-router
- - Create APIs to set and get router state.
-
- Make it work with browser’s
history
.
-
@frontity/mars-theme
- - The theme can render the home.
- - The theme can render lists of categories and tags.
- - The theme can render posts.
- - The theme can render pages.
-
Typescript
-
- Create the
Settings
type. -
- Create the
Package
type. -
- Create the
Connect
type.
-
- Create the
-
Docs
- - The docs have an Introduction section.
- - The docs have a Getting Started section.
- - The docs have a guide to create a new theme.
-
CLI
-
- Should have a
frontity create
command. -
- Should have a
frontity dev
command. -
- Should have a
frontity build
command. -
- Should have a
frontity serve
command.
-
- Should have a