Kickstart a simple project fast!
If you would like a more sophisticated kickstart with code splitting, see the kickstart-hugeapp project.
Clone this project to start a simple project using Meteor, React.js and Webpack.
git clone https://github.com/thereactivestack/kickstart-simple.git
cd kickstart-simple
meteor
- Include the simple todo app example
- ES6 modules
- Meteor
- React.js
- react-router with server-rendering (you can disable it by editing
server/entry.js
) - Webpack (bundle your app / assets and send them to Meteor)
- Hot-reload with no page refresh in development mode
- Optimize your code in production mode
- Give access to NPM by using packages.json
Webpack needs one webpack.conf.js
file for the client and one webpack.conf.js
for the server. It allows you to have a better control over the build process. Every other files are not automatically included by Meteor. Everything is starting from your entry point. You can also have a webpack.conf.js
that is shared between client and server for common settings.
The server entry point in the project is at entry/server/entry.js
. Everything that you want to load on your Meteor server, they have to be imported or required in some way.
The client entry point in the project is at entry/client/entry.js
and work the same way as on the server, except it is run on the browser or Cordova.
You can use any package coming from NPM by adding it to webpack.packages.json
.
Go look at them, they are simple!
If you would like to activate unit and integration tests, you can add the following packages:
meteor add sanjo:jasmine
meteor add velocity:html-reporter
And uncomment the code in entry/client/entry.js and entry/server/entry.js
You can use meteor run, meteor build, mup or anything working with Meteor.
Run in production mode
meteor run --production
Build for production
meteor build .
Deploy with Meteor-up
mup deploy
You need to do those 3 steps to make it works with iOS or Android:
Add the platform to your Meteor project
meteor add-platform ios meteor add-platform android
Allow access to your dev server in your
/mobile-config.js
file:App.accessRule('http://192.168.1.100:3500/*');
Replace localhost by your local ip address in
/entry/webpack.conf.js
.