An interactive portfolio PWA showcasing James Douglas White's skills and experience with the latest web technologies. Visitors can explore my past projects, gaining insights into my capabilities in areas like Angular, Ionic, Firebase, and GCP. The PWA design ensures a seamless and performant experience across any device, even when offline.
View James Douglas White's ResumeView Demo · Report Bug · Request Feature
Table of Contents
The following steps will help you get a local clone up and running
-
Install NodeJS
-
Clone the repo:
git clone https://github.com/apsistec/dw-portfolio.git
-
Install NPM packages
npm install
-
Using npm, install:
npm install @angular/cli@latest --global
npm install @ionic/cli@latest --global
npm install firebase-tools@latest --global
npm install @ionic/angular@latest
- Get a free Firebase Account at https://firebase.com
- Get a free Sendgrid Account at https://app.sendgrid.com
-
Install Angular PWA tools
ng add @angular/pwa
-
Install & Run Capacitor Assets tool
npm i @capacitor/assets
-
Install Angular Firebase tools
ng add @angular/fire
-
Enter your Firebase API key
environments/environment.ts
&environments/environment.prod.ts
Example:
export const environment = { production: "boolean", firebaseConfig: { apiKey: "string", authDomain: "string", databaseURL: "string", projectId: "string", storageBucket: "string", messagingSenderId: "string", appId: "string", measurementId: "string", }, };
-
Initialize Firebase
firebase init
-
Work on the app code with hot-reload
ionic serve
-
Install Sendgrid
cd functions
npm i @sendgrid/mail
-
Compile the function code
npm install
ng build
cd -
-
Compile the app code -production quality
ionic build --prod
-
Deploy to Firebase Functions & Hosting
firebase deploy
Primary functions available in app
- View and Print Douglas' Resume (James (Doug)las White Resume)
- Send Message to Douglas (Sendgrid.com)
- Add Changelog
- Add Contact Page
- Add In App Messaging
- Improve Visualizations
- Add Authentication
- Add Menu
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/Amazing Feature
) - Commit your Changes (
git commit -m 'Add some Amazing Feature'
) - Push to the Branch (
git push origin feature/Amazing Feature
) - Open a Pull Request to Main
Distributed under the MIT License. See LICENSE.txt
for more information.
Project Link: https://github.com/apsistec/dw-portfolio
Douglas White