Giter Site home page Giter Site logo

ng-dashbordy's Introduction

Dashbordy Logo

An Angular interface to create, read, update and delete Firestore users

About the project

Dashbordy is one of my personal pet projects developed in Angular, using Firebase as a backend and deployed on Heroku. The main scope of the project was to implement and design a single page application to perform common CRUD operations on Firestore users documents. It was also a mean to further build up my Angular knowledge and get familiar with new environments like PrimeNG and SCSS.

Firestore

  • The users are stored on Firebase in a collection of documents. The ID of every document refers to their respective UID in the the Firebase Authentication database.

firestore model

Angular

  • The Angular application comes with a login page to prevent unauthorised read and writes. Make sure to modify your Firebase security rules to allow users with an admin role.

login page

  • The columns can be sorted and the input box will filter the search results on matching name, email or city.

table view

  • A modal window to create new users or edit existing ones.

modal window

Heroku

To prevent sharing Firebase API key and ID's on a public repository, the setEnv.ts script will generate them before the build command and production deployement using evironment variables from Heroku.

in package.json:

"config": "ts-node ./src/assets/scripts/setEnv.ts"
"build": "npm run config -- --environment=prod && ng build --prod"

Requirements

To locally build and run an Angular project, you will have to setup the development environements which requires the Angular CLI and a compatible Node.js version.

First follow the instructions on nodejs.org to install Node.js on your operating system.

You can then use the npm package manager that comes with Node.js to install the Angular CLI.

npm install -g @angular/cli

This project was first generated using Angular CLI version 10.2.0.

Clone the repository

git clone https://github.com/ordy/ng-dashbordy

Instructions if you need to install git: git-scm

Building the project

In your cookingdom directory, run:

npm install

This will fetch all the required dependencies from package.json to run the application.

Run a development server

Run npm start to run the app on a local dev server. Then navigate to http://localhost:4200/ to load the app. The page will automatically reload if you change any of the source files.

Running unit tests

Run ng test to execute the unit tests via Karma.

Make sure to set autoWatch: false, singleRun: true in karma.conf.js if you are going to run the tests on a Continous Itergration service.

ng-dashbordy's People

Contributors

ordy avatar

Stargazers

 avatar

Watchers

James Cloos avatar  avatar

Forkers

kabamamadyit

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.