Skip to content

Commit

Permalink
Merge pull request #49 from fsereno/dev
Browse files Browse the repository at this point in the history
The merge to master
  • Loading branch information
fsereno authored Jul 19, 2023
2 parents 00a68c2 + 393683c commit b13b556
Show file tree
Hide file tree
Showing 338 changed files with 6,592 additions and 2,074 deletions.
1 change: 0 additions & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
node_modules
docs
Dockerfile
.vscode
.git
Expand Down
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -235,4 +235,7 @@ BundleArtifacts/
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/
!*.[Cc]ache/

#specific files
docker-token.json
111 changes: 48 additions & 63 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,41 @@
<a href="http://fswebsitesolutions.com/"><img src="https://raw.githubusercontent.com/fsereno/portfolio/master/docs/images/FSLogo.jpeg" width="100px" title="FS Website Solutions" alt="FS Website Solutions" target="_blank"></a>

# **Fabio Sereno** - Software Developer
Highly Experienced Full Stack Web Developer of 10+ years (6+ in the FinTech sector). Highly self-motivated, enthusiastic, professional and a team player. Possesses strong analytical and problem solving skills, code proficiency, and an ability to follow through with projects from initiation to completion with innovation and creativity.
Highly experienced Full Stack Software Engineer with over 15 years of experience (6+ years in the FinTech sector). Self-motivated, enthusiastic, and professional team player with strong analytical and problem-solving skills. Demonstrates proficiency in coding and a proven ability to successfully complete projects with innovation and creativity.

Very keen on learning and using the latest technologies, with a real passion for software development. Areas of keen interest: Fin Tech, Health Tech, Commerce, ML/AI, Blockchain, XR(VR/AR), IoT.
Passionate about software development and constantly eager to learn and adopt the latest technologies. Keen interest in FinTech, HealthTech, Commerce, ML/AI, Blockchain, XR (VR/AR), and IoT.

## My Portfolio Repository
The purpose of this repository is to demonstrate skills in various technologies, coding proficiency and knowledge.

To see a fully deployed version of this project go to:
To view a static version of this project with limited functionality, please visit:
https://fsereno.github.io/portfolio/

To see a fully containerised version of this project deployed to AWS (Amazon Web Services) EC2, please either raise an issue on this GitHub repository or contact me via LinkedIn.

- Raise an issue on Github (https://github.com/fsereno/portfolio/issues)
- Contact me on LinkedIn (https://www.linkedin.com/in/fabio-sereno-6a97b986/)

This project is both built and deployed with continuous integration and deployment (CI/CD).

Some of the technology used in this project and related projects:
- Azure Functions (https://azure.microsoft.com/en-gb/services/functions/)
- AWS Lambda (https://aws.amazon.com/lambda/)
- .NET (https://dotnet.microsoft.com)
- Docker (https://www.docker.com/)
- Node JS (https://nodejs.org/en/)
- Gulp (https://gulpjs.com)
- Docker Hub (https://hub.docker.com/)
- NodeJS (https://nodejs.org/en/)
- Webpack (https://webpack.js.org/)
- Pug (https://pugjs.org/api/getting-started.html)
- TypeScript (https://www.typescriptlang.org)
- A-Frame (https://aframe.io/)
- Sass (https://sass-lang.com/)
- Three.js (https://threejs.org/)
- React (https://reactjs.org/)
- Vue (https://vuejs.org/)
- Taiko (https://www.npmjs.com/package/taiko)
- Mocha (https://mochajs.org/)
- Chai (https://www.chaijs.com/)
- A-Frame (https://aframe.io/)
- .NET (https://dotnet.microsoft.com)
- Enzyme (https://enzymejs.github.io/enzyme/)
- NUnit (https://nunit.org/)
- ThreeJS (https://threejs.org/)
- React (https://reactjs.org/)
- Vue (https://vuejs.org/)
- SOLID principles
- TDD - Test driven development
- DDD - Domain driven development
Expand All @@ -45,10 +50,8 @@ Some of the technology used in this project and related projects:
---

## Prerequisites

- Docker (https://www.docker.com/)
- Node JS v ^14.17.5 (https://nodejs.org/en/)
- NPM (https://www.npmjs.com/)
> Tip - Node and NPM are not needed locally if running within a container.
---

## Installation
Expand All @@ -62,75 +65,57 @@ Some of the technology used in this project and related projects:
---

### Run inside a Container using Docker

- Please ensure you have Docker installed and running.
- Open your preferred command line:

> Launch the container
Launch the production environment

```shell
$ docker compose up
```

>Attach a Bash command line interface.
From here you will be able to run all subsequent NPM commands

```shell
$ docker exec -it node bash
```
> You should now have a bash cmd connected to the container
---

### Run outside a Container
- Please ensure you have Node JS and NPM installed.
- Open your preferred command line:

> install NPM packages
```shell
$ npm install
$ npm install --global gulp-cli
```
---

## Usage

#### Run the initial build
> Run this first to ensure all resources build successfully
##### This will:
- Pull all images from Docker Hub.
- Spin up all services in containers.
- The application will be available at: http://localhost/

To run one of the following specific Docker tasks
- analysis
- create
- dev
- rel
- test
- test-e2e

```shell
$ npm run build
$ sh start <task>
```
#### Build a specific application
To stop one of the above tasks, excluding those which destroy themselves (create, test)

```shell
$ npm run build dir=<application>
$ sh stop <task>
```

##### This will:
- Build all initial development resources (pug, sass, ts, js).
---

#### Run the development server
### Tasks

```shell
$ npm run dev
```
#### Serve a specific application
#### Serve a specific application via the development server

```shell
$ npm run dev dir=<application>
$ sh start dev <application>
```
##### This will:
- Start the development server.
- Watch for any changes on development resources.
- Live Reload any changes straight to the browser.
- Hot-reload any changes straight to the browser.
- The default application is the root application - home
- Open your browser and navigate to http://localhost:8080.
---

#### Run analysis on a specific application

```shell
$ npm run analysis dir=<application>
$ sh start analysis <application>
```
##### This will:
- Start the analysis server.
Expand All @@ -141,35 +126,35 @@ $ npm run analysis dir=<application>
#### Build for release

```shell
$ npm run release
$ sh start rel
```
##### This will:
- Build the production directory.
- Build the production static assets directory.
---

#### Run all unit tests

```shell
$ npm test
$ sh start test
```
##### This will:
- Run all application specific and global unit tests.
---

#### Run all functional tests (using a headless browser)
#### Run all functional end-to-end tests

```shell
$ npm run test-func
$ sh start test-e2e
```
##### This will:
- Please ensure the development server is running
- Run all functional tests from the ./app/tests/functional directory
- Currently this feature is a work in progress (WIP) and will not work on ARM architecture
---

#### Create a new application

```shell
$ npm run create
$ sh create
```
##### This will:
- Build applications based on the config.json file.
Expand Down
95 changes: 0 additions & 95 deletions app/app_AzureDotNetCoreDataStructuresApi/tests/e2e/taiko.test.js

This file was deleted.

64 changes: 0 additions & 64 deletions app/app_AzureDotNetCoreUniqueDataEntryApi/tests/e2e/taiko.test.js

This file was deleted.

Loading

0 comments on commit b13b556

Please sign in to comment.