├── .babelrc
├── .gitignore
├── LICENSE
├── README.md
├── example.png
├── index.html
├── package-lock.json
├── package.json
├── src
├── angular
│ ├── index.component.ts
│ ├── index.js
│ └── main-module.ts
├── event-bus
│ └── index.js
├── react
│ ├── index.js
│ └── root.component.js
└── root-application
│ └── root-application.js
├── tsconfig.json
└── webpack.config.js
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | ["env", {
4 | "targets": {
5 | "browsers": ["last 2 versions"]
6 | }
7 | }],
8 | ["react"]
9 | ],
10 | "plugins": [
11 | "syntax-dynamic-import"
12 | ]
13 | }
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 Ivan Jovanovic
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # React and Angular single-spa example
2 | This is the code for tutorial posted on [https://ivanjov.com/micro-frontends-how-i-built-a-spa-with-angular-and-react/](https://ivanjov.com/micro-frontends-how-i-built-a-spa-with-angular-and-react/)
3 |
4 | ## Running the app
5 | #### Clone the code
6 | ```bash
7 | git clone https://github.com/IvanJov/react-angular-single-spa.git && cd react-angular-single-spa
8 | ```
9 |
10 | #### Install dependencies
11 | ```bash
12 | npm install
13 | ```
14 |
15 | #### Run app
16 | ```bash
17 | npm start
18 | ```
19 |
20 | #### Open `http://localhost:9090/#/` in browser
21 |
22 | You should see something like this:
23 |
24 | 
--------------------------------------------------------------------------------
/example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IvanJov/react-angular-single-spa/adad311de9637a9836a96baee3e29cae3b8677fe/example.png
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |