Coder Social home page Coder Social logo

bathiyal / apim-apps Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wso2/apim-apps

0.0 0.0 0.0 473.32 MB

WSO2 API Manager portals web UI apps

Home Page: https://wso2.github.io/apim-apps

License: Apache License 2.0

JavaScript 93.57% TypeScript 5.23% CSS 1.03% HTML 0.11% Handlebars 0.06% Jinja 0.01% Shell 0.01%

apim-apps's Introduction

WSO2 API Manager Portals


License stackoverflow slack


Branch / Status Azure Jenkins
master Build Status Build Status

WSO2 API Manager apps consists of several loosely coupled modules.

    * API Publisher portal
    * API Developer portal
    * API Admin portal
    * Portals integration tests

Setup build environment

  1. Install NodeJS 16.x or later LTS version from https://nodejs.org/en/download/.

Note :-

You may use nvm tool to manage NodeJS on your development environment

Note :-

You can skip following steps if you don not want to build product-apim binaries

  1. Install Maven from https://maven.apache.org/download.cgi. * For Maven 3.8 and up, please check the Troubleshoot section.
  2. Install JDK 1.8 https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html.

Fixing an issue in a web application

If you are planning to fix an issue in a specific web application, you don't need to build the whole repository. You only need to build that specific application from the portals folder. We will take fixing an issue in publisher web application as an example.

  1. If you do not build a WSO2 API Manager server, Download the built distribution of WSO2 API Manager Server from http://wso2.com/api-manager.

  2. Execute api-manager.sh (For unix environment) or api-manager.bat (For windows environment) file from the bin directory to run WSO2 API Manager Server.

  3. Goto portals/publisher directory in the apim-apps repository

  4. You can either run mvn clean install or npm ci. Note that the npm ci will be faster since mvn clean install command is executing production build and UI tests.

  5. Run npm start to start publisher portal in development mode.

Now you can update the code to view the changes in the development server. Once you are done with the fixes, you can run npm run build:prod to check for errors before committing. Also refer to 'Running Tests' section and run test if the tests are effected. At the moment these tests are valid for only publisher app.

Adding or updating a new dependency

  1. Setup the development environment by following the steps given above.

  2. Run the npm command from the web application root folder. ( Ex: For publisher web app, it's portals/publisher ).

    • Adding a dependency npm i <package-name>. (Ex: npm i base64url)
    • Removing a dependency npm uninstall <package-name>. (Ex: npm uninstall base64url)
    • Updating a version or specifying version when installing npm i <package-name>@<version>. (Ex: npm i [email protected]).
  3. Once you successfully run the above commands the package.json and package-lock.json files will be updated. You need to commit both of them.

Never run npm i since it will update the package lock for all the dependencies with there minor updated versions.

Building & Running

Build

  1. Download or clone the project source code from https://github.com/wso2/apim-apps

  2. If you want to build all web apps, run mvn clean install from the command line in the project root directory (where the root pom.xml is located).

  3. Then you just need to build WSO2 API Manager Server after. (Follow the guide there)

Run

  1. Extract the wso2am-4.0.0.zip and go to the 'bin' directory

  2. Run the api-manager.sh or api-manager.bat script based on you operating system.

  3. Access the respective WSO2 API-M interfaces

    • API Publisher web application is running at - https://localhost:9443/publisher
      You may sign in to the Publisher using the default administrator credentials (username: admin, password: admin).
    • Developer Portal web application is running at - https://localhost:9443/devportal
      You may sign in to the Developer Portal using the default administrator credentials (username: admin, password: admin). Running Tests ==================================

Unit Tests

Product Unit tests have been implemented using Jest along with enzyme

Run Tests for individual module

  • Go to the respective individual portals directory

    i:e /portals/publisher/

  • and run

    npm run test
    

    For more information regarding the test module, checkout the README in the publisher Tests module.

Integration Tests

Product integration tests have been written using Cypress Testing Framework and you can run the test suites using the following command.

  • Goto /tests/cypress/

Headless mode

  • Run

    npm run test
    

Interactive mode (with GUI)

  • Run

    npm run test:gui
    

Support

WSO2 Inc. offers a variety of development and production support programs, ranging from Web-based support up through normal business hours, to premium 24x7 phone support.

For additional support information please refer to http://wso2.com/support

For more information on WSO2 API Manager please visit https://wso2.com/api-management/

Known Issues of WSO2 API Manager

All known issues of WSO2 API Manager are filed at:


(c) Copyright 2021 WSO2 Inc.

apim-apps's People

Contributors

wso2-jenkins-bot avatar malinthaprasan avatar chamilaadhi avatar tharindu1st avatar harsha89 avatar lakmali avatar tmkasun avatar chanaka3d avatar ruks avatar kavishkafernando avatar tharikagithub avatar chamindias avatar vithu30 avatar lalaji avatar dushaniw avatar hevayo avatar uvindra avatar chathuranga95 avatar rswijesena avatar chamndesilva avatar msm1992 avatar krishanx92 avatar hiranyakavishani avatar nuwand avatar dhanuka84 avatar dushansilva avatar mushir33 avatar menakaj avatar praminda avatar arshardh avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.