This project was bootstrapped with Create React App.
This project is meant to give the user easier access to CVE(Common Vulnerabilities and Exposures) reports. It allows the user to search issues by ID, filter results by year and severity of an issue. A sortable table gives nice a and simple overview of the CVE data.
For presentation and testing purposes, the CVE data is being read from a simple JSON file. Alternatively, this can be changed to read data from an API end-point, using a library such as Axios for making REST request and Redux Thunk or Redux Saga for handling asynchronous actions.
The first thing you need to do once you pull the application is to install its dependencies. To do this, in terminal or console, navigate to the root directory of the project where the package.json
file is and execute the following command npm install
. This will install all dependencies/libraries for the application to run correctly.
This application has been created using create-react-app
, meaning that it can be simply started in development mode using npm start
. This should start a development server at http://localhost:3000. In addition, the library should use the default system browser to open a new tab with this location for us.
Building a React Application with create-react-app is very simple. By running npm run build
we can build our production version of the application which will appear in the build
folder in the root of our project. Builds can take anywhere froma a minute to half an hour so please be patient. Please note that built files will be minified.
There are two ways of deploying this application my favorite being AWS Amplify. AWS Amplify is a pay as you go service which will manage the code pipeline for your application as well as deployment and domain setup. In order to deploy an application to AWS Amplify do the following:
- Create an AWS account (You get free tier resources for the first 12 months!)
- Create a repository for your application in a chosen region.
- Add the repository as a remote on this project and push the application to remote.
- Search for services in the AWS search console and navigate to it.
- Click on deploy application and follow the steps within the setup process.
An alternative some people might go for would be to self-host the files on apache or nginx server. Either will work as this is purely a JavaScript application so no engine modules will be required for the application to be hosted.
Simply copy and paste the contents of the build folder to the root host directory of your HTTP server. And that is it!
Thanks for checking out my project.