Skip to content

The Frontend provides a dynamically generated website with the information provided by the Backend...

License

Notifications You must be signed in to change notification settings

goldenmaza/aveline

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project description:

The project contains two modules and one is dependent on the other to actually generate anything during runtime.

The Frontend module is a Nodejs application that contains React components. The Backend module is also a Nodejs application, to handle API calls from the Frontend application.

Frontend module contains/will contain:

  • Nodejs
  • React
  • HTML5
  • CSS3
  • Javascript
  • Babel
  • Axios
  • Redux
  • Enzyme
  • Testing-library
  • WebdriverIO

Backend module contains/will contain:

  • Nodejs
  • Javascript
  • Express
  • Babel
  • Body-parser
  • Nodemailer
  • Sequelize
  • Graphql
  • Mysql
  • Cors
  • Nodemon
  • Dotenv
  • Helmet
  • Compression
  • Dataloader
  • Lodash
  • EventEmitter
  • Streams
  • Cluster / Multithreading
  • Jest
  • Supertest

The basic flow is that the build output from the Frontend module should be placed on a server to host the React application. This application in turn calls the Backend application via REST calls to predefined middleware routes/paths that are currently only open for incoming calls.

There are currently only two endpoints. The first is the GraphQL API and the second in the Nodemailer endpoint. The Nodemailer endpoint is used by the contact form to send an e-mail to a specific address. The GraphQL API is used by many components to prepare the data required to generate a website with content.

Work remaining for the Frontend module:

  • WebdriverIO

Work remaining for the Backend module:

  • TBD

Note: These two modules currently only work locally as I have not been able to deploy the backend module to a webhosting service to test it live.