|
1 |
| -# Profile Designer |
| 1 | +<h1>Profile Designer</h1> |
| 2 | +<h2>Prerequisites</h2> |
| 3 | +<ul> |
| 4 | +<li> |
| 5 | +Install node.js (version > 18.17) - https://nodejs.org/en/ |
| 6 | +</li> |
| 7 | +<li> |
| 8 | +Install npm (version > 8.5.4) - https://www.npmjs.com/ (npm install -g npm) |
| 9 | +</li> |
| 10 | +<li> |
| 11 | + React - https://reactjs.org/ - First time React users, install React using create-react-app from a node.js command prompt, a tool that installs all of the dependencies to build and run a full React.js application. |
| 12 | +</li> |
| 13 | +<li> |
| 14 | + .NET Core 6.0.x, Visual Studio 2022 or equivalent |
| 15 | +</li> |
| 16 | +<li> |
| 17 | + DB - Install PostgreSQL |
| 18 | + - Install PostgreSql, including pgAdmin (https://www.enterprisedb.com/downloads/postgres-postgresql-downloads) |
| 19 | + - See below for more details on setting up DB for this project. |
| 20 | +</li> |
| 21 | +</ul> |
2 | 22 |
|
3 |
| -## Prerequisites |
| 23 | +<h2>Directories</h2> |
| 24 | +<ul> |
| 25 | +<li> |
| 26 | + \api - This contains a .NET web API back end for profile designer. Within this solution, the OPC translations will occur, database connections will occur, etc. |
| 27 | +</li> |
| 28 | +<li> |
| 29 | + \frontend - This contains the REACT front end for profile designer. |
| 30 | +</li> |
| 31 | +<li> |
| 32 | + \SampleNodeSets - This contains nodesets that we use to import into system. Any OPC UA compliant nodeset is permitted. These are stored just for convenience while developing within the system. |
| 33 | +</li> |
| 34 | +<li> |
| 35 | + \sql - This contains the SQL script used to generate the DB structure and insert required lookup data as well as some sample users. |
| 36 | +</li> |
| 37 | +</ul> |
4 | 38 |
|
5 |
| -- Install node.js (version > 10.16) - https://nodejs.org/en/ |
6 |
| -- Install npm (version > 5.6) - https://www.npmjs.com/ (note I just upgraded to 7.17 => npm install -g npm) |
7 |
| -- React - https://reactjs.org/ - First time React users, install React using create-react-app from a node.js command prompt, a tool that installs all of the dependencies to build and run a full React.js application. |
8 |
| -- .NET Core 6.0.x, Visual Studio 2022 or equivalent |
9 |
| -- DB - Install PostgreSQL |
10 |
| - - Install PostgreSql, including pgAdmin (https://www.enterprisedb.com/downloads/postgres-postgresql-downloads) |
11 |
| - - See below for more details on setting up DB for this project. |
12 |
| - |
13 |
| -## Directories |
14 |
| -- \api - This contains a .NET web API back end for profile designer. Within this solution, the OPC translations will occur, database connections will occur, etc. |
15 |
| -- \frontend - This contains the REACT front end for profile designer. |
16 |
| -- \SampleNodeSets - This contains nodesets that we use to import into system. Any OPC UA compliant nodeset is permitted. These are stored just for convenience while developing within the system. |
17 |
| -- \sql - This contains the SQL script used to generate the DB structure and insert required lookup data as well as some sample users. |
18 |
| - |
19 |
| -## How to Build |
20 |
| -- Clone the repo from GIT. |
21 |
| - |
22 |
| -If you have an older clone that is missing the common submodule: |
23 |
| -```ps |
24 |
| -cd c:\sources\cesmii\profiledesigner |
25 |
| -git submodule add https://github.com/cesmii/cesmii-common |
26 |
| -``` |
27 |
| - |
28 |
| -- **Build/Run the front end:** |
29 |
| - ```powershell |
30 |
| - cd \frontend |
31 |
| - npm install |
32 |
| - npm run start |
33 |
| - ``` |
34 |
| - - Verify the site is running in a browser: http://localhost:3000 |
35 |
| - |
36 |
| -> **Note** |
37 |
| -> |
38 |
| -> The ENV files in the root React folder point to the base URL for the web API. |
39 |
| -> Login: The login process was intentionally simple. Use cesmii/cesmii to login. |
40 |
| -
|
41 |
| - |
42 |
| - |
43 |
| -- **Build/Run the back end API (.NET 6 Solution):** |
44 |
| - - Standard .NET build and run. |
45 |
| - |
46 |
| -- **PostgreSql DB** |
47 |
| - See above for initial install instructions. |
48 |
| - - Run pgAdmin |
49 |
| - - Create local DB (see AppSettings.json for database name.) |
50 |
| - - Open the Query Tool (Tools menu) |
51 |
| - - Open the CESMII-Profile-Designer\sql\CESMII.ProfileDesigner.DB.sql file |
52 |
| - - Create the cesmii role/login and the database (comment out everything except the create role and create database sections and run the script) |
53 |
| - - Open a query tool on the newly created database and run the rest of the script |
54 |
| - - Change the password on the cesmii login to match the one in the appsettings.development.json file. |
55 |
| - |
56 |
| -## Run Profile Designer, Market Place and Cloud Library locally |
57 |
| - |
58 |
| -### Profile Designer: Front End port 3002, API port 5004 |
59 |
| - |
60 |
| -1. Add a frontend/.env.development file with the following entries/content: |
61 |
| -``` |
62 |
| -REACT_APP_BASE_API_URL=https://localhost:5004/api |
63 |
| -PORT=3002 |
64 |
| -``` |
65 |
| - |
66 |
| -2. Change |
| 39 | +<h2>How to Build</h2> |
| 40 | +<ol> |
| 41 | +<li> |
| 42 | + Clone the repo from GIT. |
| 43 | +</li> |
| 44 | +<li> |
| 45 | + <b>Build/Run the front end: </b> |
| 46 | + <ul> |
| 47 | + <li> |
| 48 | + cd \frontend |
| 49 | + </li> |
| 50 | + <li> |
| 51 | + npm install |
| 52 | + </li> |
| 53 | + <li> |
| 54 | + npm run start |
| 55 | + </li> |
| 56 | + <li> |
| 57 | + Verify the site is running in a browser: http://localhost:3000 |
| 58 | + </li> |
| 59 | + </ul> |
| 60 | + <p> |
| 61 | + Note: The ENV files in the root React folder point to the base URL for the web API. |
| 62 | + Login: The login process was intentionally simple. Use cesmii/cesmii to login. |
| 63 | + </p> |
| 64 | +</li> |
| 65 | +<li> |
| 66 | + <b>Build/Run the back end API (.NET 6 Solution): </b> |
| 67 | + <p> |
| 68 | + Standard .NET build and run. |
| 69 | + </p> |
| 70 | +</li> |
| 71 | +<li> |
| 72 | + <b>PostgreSql DB </b> |
| 73 | + <p> |
| 74 | + See above for initial install instructions. |
| 75 | + - Run pgAdmin |
| 76 | + - Create local DB (see AppSettings.json for database name.) |
| 77 | + - Open the Query Tool (Tools menu) |
| 78 | + - Open the CESMII-Profile-Designer\sql\CESMII.ProfileDesigner.DB.sql file |
| 79 | + - Create the cesmii role/login and the database (comment out everything except the create role and create database sections and run the script) |
| 80 | + - Open a query tool on the newly created database and run the rest of the script |
| 81 | + - Change the password on the cesmii login to match the one in the appsettings.development.json file. |
| 82 | + </p> |
| 83 | +</li> |
| 84 | +</ol> |
0 commit comments