|
1 |
| -# superplate |
| 1 | +<div align="center"> |
| 2 | +<img src="images/banner.png" align="center" /> |
| 3 | +</div> |
| 4 | +<br/> |
| 5 | +<div align="center">Performance oriented UI Frameworks application boilerplate creator with TypeScript using the popular front-end ecosystem tools.</div> |
| 6 | +<br/> |
| 7 | + |
| 8 | + |
| 9 | +<div align="center"> |
| 10 | + |
| 11 | + |
| 12 | + |
| 13 | +[](https://meercode.io/pankod/superplate) |
| 14 | +[](https://meercode.io/pankod/superplate) |
| 15 | +[](https://david-dm.org/pankod/superplate) |
| 16 | +[](https://david-dm.org/pankod/superplate?type=dev) |
| 17 | + |
| 18 | + |
| 19 | + |
| 20 | +</div> |
| 21 | + |
| 22 | + |
| 23 | +<br/> |
| 24 | +<div align="center"> |
| 25 | + <sub>Created by <a href="https://www.pankod.com">Pankod</a></sub> |
| 26 | +</div> |
| 27 | + |
| 28 | + |
| 29 | +## About |
| 30 | + |
| 31 | + |
| 32 | +superplate has been developed to create rock solid UI frameworks apps boilerplate with no build configurations in seconds. |
| 33 | + |
| 34 | +You can add usefull, highly-demands front-end development tools and libraries as a plugin by using superplate CLI during the project creation phase. |
| 35 | + |
| 36 | + |
| 37 | +To learn on how superplate and its plugins work, you can check out our documentation. |
| 38 | + |
| 39 | + |
| 40 | + |
| 41 | +For now, superplate only creates project starter boilerplates for Next.js apps as a default UI Framework option. Other frameworks integration will be added soon. |
| 42 | + |
| 43 | +## Available Integrations |
| 44 | + |
| 45 | + |
| 46 | +<img src="images/available.png" align="center" /> |
| 47 | + |
| 48 | + |
| 49 | + |
| 50 | +## Coming Soon |
| 51 | +<img src="images/integrations.png" align="center" /> |
| 52 | + |
2 | 53 |
|
3 |
| -**superplate** is a CLI to save you hours of development time when starting a [Next.js](https://nextjs.org/) project. |
4 | 54 |
|
5 | 55 | ## Quick Start
|
| 56 | +To create a new app run the command: |
| 57 | + |
6 | 58 |
|
7 | 59 | ```bash
|
8 | 60 | npx superplate <my-project>
|
9 | 61 | ```
|
| 62 | +Make sure you have npx installed (npx is shipped by default since npm 5.2.0) |
| 63 | + |
| 64 | +You will be prompted with plugin options to create your project without spending hours on configurations. To find out more about all the plugins see the [superplate-core-plugins](https://github.com/pankod/superplate-core-plugins). |
| 65 | + |
| 66 | + |
10 | 67 |
|
11 |
| -Just run the command above and you will be prompted with options to create your project without spending hours on configurations. |
12 | 68 |
|
13 | 69 | <p align='center'>
|
14 | 70 | <img src='https://user-images.githubusercontent.com/11361964/106468355-dd9be280-64ae-11eb-82da-c313beb16d6b.gif' width='500' alt='superplate example'>
|
15 | 71 | </p>
|
16 | 72 |
|
| 73 | + |
| 74 | +Once all questions are answered, it will install all plugins and the dependencies. Then navigate to the project folder and launch it: |
| 75 | + |
| 76 | +```bash |
| 77 | +npm run dev |
| 78 | +``` |
| 79 | +>Use the dev command when running application in development mode. |
| 80 | +## Philosophy |
| 81 | + |
| 82 | +- It provides a easy starting to your project in seconds with using industry-standard best practices and performance oriented tools & libraries. |
| 83 | +- You can easily develop your own framework CLI and plugins according to your needs to on top of superplate codebase due to its framework/plugin agnostic nature. |
| 84 | +- Code examples are added to plugin documents to show how best practices are implementing. |
| 85 | + |
| 86 | +## Next.js Integration |
| 87 | + |
| 88 | +superplate makes it easier to get up and running with a well-structured Next.js and TypeScript application. |
| 89 | + |
| 90 | + |
| 91 | +Next.js is a minimalistic React framework that runs on the browser and the server with all the features you need for production: hybrid static & server rendering, TypeScript support, smart bundling, route pre-fetching, and more. It offers developers an easy way to get started, build server-side rendering and static web applications using React. |
| 92 | + |
17 | 93 | ## Plugins
|
| 94 | +superplate uses a plugin-based architecture. Basically, plugins are created from highly-demanded npm tools in the front-end ecosystem with configuration files. |
| 95 | + |
| 96 | +The features and tools listed during the project creation process are implemented as plugins. |
| 97 | + |
| 98 | +You can check them out in [superplate-core-plugins](https://github.com/pankod/superplate-core-plugins). |
| 99 | + |
| 100 | +The default core plugins determined by <a href="https://www.pankod.com">Pankod</a> team uses on a day-to-day basis to build apps. Feel free to send PR or open an issue for new plugins you want to add. |
18 | 101 |
|
19 |
| -superplate comes with a set of plugins to get you started. You can check them out in [superplate-core-plugins](https://github.com/pankod/superplate-core-plugins). |
20 | 102 |
|
21 | 103 | ### Using a custom source of plugins
|
22 | 104 |
|
23 | 105 | You can use different sources for plugins other than [superplate-core-plugins](https://github.com/pankod/superplate-core-plugins).
|
24 | 106 |
|
25 | 107 | Simply add `--source <path-to-source>` option to use **superplate** with a custom source.
|
26 | 108 |
|
27 |
| -To Learn more about sources and how to create your own; please check out [Documentation#creating-a-source-repository](X) |
| 109 | +To learn more about sources and how to create your own; please check out [Documentation#creating-a-source-repository](X) |
28 | 110 |
|
29 | 111 | ### Creating a plugin
|
30 | 112 |
|
31 | 113 | **superplate** gives you many abilities to create your own plugin and interact with the others. To learn more on creating a plugin, please check out [Documentation#creating-a-plugin](X)
|
32 | 114 |
|
33 |
| -## Documentation |
34 | 115 |
|
35 |
| -To learn on how **superplate** and its plugins work, you can check out our [documentation](X) |
36 | 116 |
|
37 |
| -## Options |
| 117 | +## Avaliable plugins |
| 118 | +<img src="images/plugins.png" align="center" /> |
38 | 119 |
|
39 |
| -### `--source <path-to-source>` |
40 | 120 |
|
41 |
| -Alias: `-s`. Use this option to target a custom source of plugins. Source path can be a remote git repository or a local path. |
| 121 | +## CLI options |
| 122 | + |
| 123 | +``` |
| 124 | +> npx superplate --help |
| 125 | +Usage: superplate [options] |
| 126 | +
|
| 127 | +Options: |
| 128 | + -v, --version prints version number |
| 129 | + -h, --help prints help information on all commands and options |
| 130 | + -d, --debug prints additional logs |
| 131 | + -s, --source <path-to-source> Use this option to target a custom source of plugins |
| 132 | + Source path can be a remote git repository or a local path. |
| 133 | +``` |
42 | 134 |
|
43 |
| -### `--version` |
44 | 135 |
|
45 |
| -Alias `-v`. Prints version number. |
| 136 | +## Development mode commands |
46 | 137 |
|
47 |
| -### `--help` |
48 | 138 |
|
49 |
| -Alias `-h`. Prints help information on all commands and options. |
| 139 | +Watch for changes in the code; build the project and then globally install the superplate for testing. |
| 140 | +``` |
| 141 | +npm run dev:global |
| 142 | +``` |
50 | 143 |
|
51 |
| -### `--debug` |
| 144 | +Create a build inside `/lib` directory. |
52 | 145 |
|
53 |
| -Alias `-d`. Prints additional logs. |
| 146 | + ``` |
| 147 | + npm run build:cli |
| 148 | + ``` |
54 | 149 |
|
55 |
| -## Contribution |
56 | 150 |
|
57 |
| -If you have a bug to report, do not hesitate to file an issue. |
| 151 | +Install the current build globally |
58 | 152 |
|
59 |
| -If you are willing to fix an issue or propose a feature; all PRs with clear explanations are welcome and encouraged. |
60 | 153 |
|
61 |
| -## Development |
| 154 | +``` |
| 155 | +npm run global |
| 156 | +``` |
62 | 157 |
|
63 |
| -### `npm run dev:global` |
64 | 158 |
|
65 |
| -Watch for changes in the code; build the project and then globally install the superplate for testing. |
66 | 159 |
|
67 |
| -### `npm run build:cli` |
| 160 | +## Contribution |
68 | 161 |
|
69 |
| -Create a build inside `/lib` directory. |
| 162 | +If you have a bug to report, do not hesitate to file an issue. |
70 | 163 |
|
71 |
| -### `npm run global` |
| 164 | +If you are willing to fix an issue or propose a feature; all PRs with clear explanations are welcome and encouraged. |
72 | 165 |
|
73 |
| -Install the current build globally |
| 166 | +## License |
74 | 167 |
|
| 168 | +Licensed under the MIT License, Copyright © 2021-present Pankod |
0 commit comments