This is a web application that utilizes SWAPI to show information about people in the Star Wars universe.
It uses the Angular Material library for UI components and NgRx for state management.
- Getting Started
- Features
- Folder Structure
- Built With
- Authors
- Running unit tests
- Running component tests
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- Node.js and npm installed on your local development machine.
- Install Angular CLI globally on your machine.
- Clone the repository:
git clone https://github.com/mzeitz1902/star-wars.git- Navigate into the cloned repository:
cd your-project-name- Install the dependencies:
npm installIt might be necessary to use npm i --legacy-peer-deps because of version discrepancies with the NgRx packages.
- Start the development server:
ng serveNow, the application should be running at http://localhost:4200/.
- View a paginated list of people from the Star Wars universe
- Search for a person by name
- View detailed information about a person
- Add a new person to the list (only locally)
- Delete a person from the list (only locally)
├── src
│ ├── app
│ │ ├── pages
│ │ │ ├── people
│ │ │ │ ├── store
│ │ │ │ ├── components
│ │ │ │ │ ├── add-person-dialog
│ │ │ │ │ ├── people
│ │ │ │ │ │ ├── components
│ │ │ │ │ │ │ ├── add-person-dialog
│ │ │ │ │ │ │ ├── people
│ │ │ │ │ │ │ │ ├── header
│ │ │ │ │ │ │ │ ├── content
│ │ │ │ │ │ │ │ ├── people-list
│ │ │ │ │ ├── person-details
│ │ ├── shared
│ │ │ ├── components
└── ...
- SWAPI - Star Wars API
- Angular 18 - The web framework used
- NgRx - State Management
- Angular Material - Material Design components for Angular
- Tailwind - CSS framework for styling (Flexbox etc.)
- Jest - Testing framework
- Cypress - Component test framework
- Manuel Zeitz - mzeitz1902
Run ng test to execute the unit tests via Jest.
Run ng cypress:open:component to run component tests via Cypress.