xref: /openbmc/webui-vue/README.md (revision 0fc91e79)
1# webui-vue
2
3webui-vue is a web-based user interface for the OpenBMC firmware stack built on
4[Vue.js](https://vuejs.org/).
5
6## Hold on... What happened to phosphor-webui?
7
8[phosphor-webui](https://github.com/openbmc/phosphor-webui) was built on
9AngularJS and [AngularJS goes End of Life](https://www.convective.com/angularjs-end-of-life/)
10June 30, 2021, so this repository is hopefully its replacement. At this time,
11phosphor-webui still contains more features and you should consider using it.
12
13## When will this new Vue.js application reach feature parity with phosphor-webui?
14
15The current plan is by June 2020!
16
17## Why will this application be better?
18
19As mentioned, this application is built using Vue.js, a modern open-source
20Model-View-ViewModel JavaScript framework supported by an active community and
21strong documentation. It has been architected to allow organizations to easily
22update the theme to support their brand. This rewrite takes advantage of
23front-end development best practices and does not suffer from some of the
24anti-patterns that exist in phosphor-webui today.
25
26## How can I get involved?
27
28Visit the [CONTRIBUTING.md](CONTRIBUTING.md) for more on how to contribute code,
29review some code in
30[Gerrit](https://gerrit.openbmc-project.xyz/q/project:openbmc%252Fwebui-vue+status:open),
31or join us in the
32[GUI design workgroup meeting](https://github.com/openbmc/openbmc/wiki/GUI-Design-work-group).
33
34## Project setup
35
36### Install Dependencies
37```
38npm install
39```
40### Create a .env file
411. Create the following file in the root directory
42     - .env.development.local
431. Add the following environment variable
44    - BASE_URL="https://<BMC IP address or FQDN>"`
45
46
47## Compiles and hot-reloads for development
48
49```
50npm run serve
51```
52
53## Compiles and minifies for production
54
55```
56npm run build
57```
58
59## Run your unit tests
60
61```
62npm run test:unit
63```
64
65## Lints and fixes files
66
67```
68npm run lint
69```
70
71## Customize configuration
72
73See [Configuration Reference](https://cli.vuejs.org/config/).
74
75## Documentation
76The documentation for coding standards and components is located in the `docs` directory. It is created using the [VuePress](https://vuepress.vuejs.org/) static site generator. Information about how to write documentation can be found on the [VuePress website](https://vuepress.vuejs.org/).
77
78### Running Locally
79```
80Run npm docs:serve
81```
82