This React/Redux/NodeJS/Express client application for the Have I been Pwned API.
- Node 10.15.0 (Tested)
- Yarn
yarn
yarn run watch
Open http://localhost:4000 in a web browser to view the application.
yarn run watch:hot
Open http://localhost:3000 in a web browser to view the application.
yarn run build:react
yarn run start
Open http://localhost:4000 in a web browser to view the application.
Please note that you should build the React before starting the Node server.
Running the test suite:
yarn run test
You can also run the test suite with a watch running:
yarn run test:watch
The unit test suite coverage is currently incomplete with the current code in /test directory. It was intended to cover the server side code, Redux reducers and React components with a test driven development approach. Sadly this was dropped due to time constraints with only the Basic view (http://localhost:4000/test) having reducer and component coverage. However the HIBP API client classes have test coverage.
- Restyle UI elements more extensively
- Delint codebase - unfortunately automatic linting was not running in the editor used for development. A linting profile and script exist however this process has not been completed due to lack of time for retesting the resulting refactored code.
- Implement unit testing for all Redux Reducers and React Components
- Add registration page
- Add Login page
- Add password reset page
- Session management using express-session - This would include persisting the user's last search term to allow for rexecution of searches upon refreshing the page.
- Authentication using simple custom class backed by a LowDB database.