The Threat Reporting Application is a web-based platform developed with Angular, allowing users to report threats within the Lower Mainland region. The application features a dynamic, interactive map where users can pinpoint the exact location of the threat and provide detailed information. Authenticated users can also edit or delete their submitted reports, ensuring that the data remains accurate and up-to-date.
- Dynamic Map Interface: An interactive map powered by Leaflet, enabling users to visually locate and report threats.
- Threat Reporting: Users can submit threat reports by providing essential details such as threat type, location, and description.
- Authentication: Admins can authenticate with a password to access additional functionalities such as editing and deleting reports. For demonstration purposes, the password is: BaggyJeans
- Edit and Delete Reports: Authenticated users can modify or remove their own reports, offering flexibility and control over the data.
- Responsive Design: The application is optimized for various devices, ensuring a seamless experience across desktops and tablets.
- Angular: A popular web application framework used for building the front-end.
- HTML/CSS: Standard web technologies for structuring and styling the application.
- TypeScript: A superset of JavaScript that enhances code quality and maintainability.
- Angular Material: A UI component library used for implementing responsive pop-ups and other UI elements.
- Leaflet: An open-source JavaScript library for mobile-friendly interactive maps.
- Hashify: A tool for password hashing, used to secure the admin authentication process.
Begin by cloning the repository to your local machine:
git clone https://github.com/seanspoons/threat-reporting-system.git
cd threat-reporting-app
npm install
ng serve -o