Skip to content

Winning project for the Openathon IV 2019 Accenture Spain.

Notifications You must be signed in to change notification settings

epitzalis/event-ui

Repository files navigation

EventsUi

This project was generated with Angular CLI version 8.0.3.

Development server

Run ng serve for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

Build

Run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Running unit tests

Run ng test to execute the unit tests via Karma.

Features and functionalities

This project was created from scratch (as you can see in the commit history), and include all features and functionalities explained in the seven labs and Openanthon day.

Additional features

  • Angular 8: Project was generated from scratch using Angular 8.0.3.
  • Reactive Foms: In all forms. Error messages are generated dynamically.
  • Animations: Event list is shown with a side animation.
  • Redesign: A little bit changes in CSS, HTML and resources. All new images are free to use and was downloaded from pixabay.com alt text
  • UX Inproved: A little bit changes to inprove the UX.
    • Do not show "Profile" option when user is not logged.
    • Only owner can see the "Delete" and "Edit" buttons for a event.
    • Include the "Logout" button in the profile detail.
    • "Profile" option was renamed to user ID.
  • Centralized error management: Using an interceptor, the errors are controlled in a service.
  • Lazy Loading: Added lazy loading to some modules for a better performance. alt text
  • Unit Test: Added 68 Unit Test to cover 100% of code. alt text alt text
  • Zero vulnerabilities: Project was audit with 'npm audit' and SonarQube. No vulnerabilities was detected in distribution environment (until today 25/07/19). There is a known vulnerability in compodoc that is not solvable at the moment, but it is acceptable because it is only used to generate documentation and therefore does not jeopardize the production environment.
  • Code Comments: More code comments was added for cover more than 11% (audited with a SonarQube rule).
  • Compodoc: Compodoc was included. Project documentation can be generated running 'npm run compodoc' command. alt text
  • Bundle Report: Generated to analyze bundle size for optimization. Bundle Report can be generated running 'npm run bundle-analyzer' command. alt text
  • Zero TSLint problems: No file with errors after running 'npm run lint'
  • SonarQube analisys:
    • 0 bugs
    • 0 vulnerabilities
    • 0 code smells
    • 0% duplicate code
    • 100% Conditional Coverage
    • 100% Line Coverage
    • 0 Ciclomatic complexity issues
    • 0 Cognitive complexity issues

alt text

alt text

Example data

To run the project with example data it's necessary run "json-server --watch db.json" command in the same directory where the db.json file is. There are a db.json file located in project root directory that include example data. The server run in port 3000 as default. For more details visit https://github.com/typicode/json-server

Credits

By alfabetical order

  • Efisio Pitzalis Morillas
  • Francisco Toro Mateo

About

Winning project for the Openathon IV 2019 Accenture Spain.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published