Incidema - Perhutani Apps

Project Overview

Incidema - Perhutani Apps is a digital platform that simplifies incident reporting for the forestry department. Reporters can easily log incidents through an intuitive interface, which then automatically forwards the report to an admin controller for prompt action. The admin reviews the case, coordinates the necessary response, and once the issue is resolved, updates the incident’s status and provides a resolution report back to the original reporter. This streamlined process enhances efficiency, transparency, and accountability in managing forest-related incidents.

Key Features

  • Progress Tracker:

    • Monitors the complete incident lifecycle from the initial report by the end-user through to resolution.
    • Displays real-time updates as the incident is verified, escalated, and managed by the admin controller.
  • Dashboard Analytics:

    • Provides comprehensive insights into app usage, including the number of active users and incident trends over time.
    • Analyzes incident data by time intervals (yearly) to identify peak periods and trends.
  • Geospatial Mapping:

    • Integrates a dynamic map that plots incident locations based on geolocation data from reports.
    • Facilitates quick assessment of high-incident areas and supports efficient resource allocation by the admin controller.

Technologies and Stack

  • Web Admin Controller:

    • Front-End Framework: Built using React, providing a responsive and dynamic interface for administrators to monitor and manage incident reports.
  • Reporter Mobile App:

    • Mobile Framework: Developed with React Native to ensure a seamless cross-platform experience on both Android and iOS.
  • Backend Services:

    • Server Environment: Powered by Node.js, enabling scalable and efficient handling of API requests, authentication, and real-time processing.
    • Architecture: Designed using a microservices architecture. This approach divides the backend into smaller, manageable, and independently deployable services, each responsible for a specific aspect of the incident management workflow.
    • Inter-Service Communication: Utilizes Kafka as the messaging system to enable robust, asynchronous communication between services. Kafka ensures reliable data exchange and better scalability by decoupling service dependencies.
  • Notifications and Email Communication:

    • Push Notifications: Integrated with Firebase to deliver timely, real-time notifications to both the admin and mobile apps, ensuring that all stakeholders are promptly informed of incident updates.
    • Email Service: Utilizes Nodemailer for sending automated emails, such as incident confirmations, status notifications, and resolution reports, thereby enhancing overall communication efficiency.
  • Databases and Caching:

    • Primary Database: MongoDB stores all critical data, including detailed incident reports, user information, and activity logs in a flexible document-oriented format.
    • Cache Layer: Redis is implemented to cache frequently accessed data, significantly reducing load times and improving API response rates.

My Role and Responsibilities

  • API Design & Development:

    • Architect and implement RESTful APIs using restify http framework that serve as the backbone for both the mobile application and the web front-end.
    • Ensure that APIs are robust, scalable, and designed with clear, well-documented endpoints to streamline integration with front-end systems.
  • Microservices Architecture:

    • Develop and maintain a microservices-based backend, dividing functionalities into small 5 services in this project, independent that can be scaled and maintained separately.
    • Integrate asynchronous messaging (using Kafka) to facilitate reliable and decoupled communication between internal backend services.
  • Performance Optimization & Scalability:

    • Continuously optimize API performance through efficient coding practices and caching mechanisms (using Redis).
    • Monitor and improve response times to guarantee a seamless user experience across both mobile (reporter) and web platforms (admin controller).
  • Security & Data Integrity:

    • Implement robust security measures, including secure authentication, authorization mechanisms, and data encryption (PII), to protect sensitive information.
  • Collaboration & Integration:

    • Work closely with front-end and mobile development teams to understand their requirements and deliver APIs that align with the user interface and experience designs.
    • Utilize Jira as the primary tool for task management, enabling efficient tracking of development tasks, bug fixes, and feature enhancements.

Get In Touch

For business inquiries, collaborations, or further discussion about my projects, please feel free to reach out via email at [email protected]. You can also follow my work and stay updated on the latest developments by connecting with me on GitHub, LinkedIn, and Instagram.


Stay Curious and Happy Coding !!


← Back to projects