Skip to content
@Assign-Meter

Assign Meter

A smart workforce and meter management platform for managing field operations, meter assignments, users, and real-time workflows.

Assign Meter

Workforce and meter management platform for modern field operations.

Assign Meter is a multi-platform application designed to simplify field operations, meter management, assignments, workforce coordination, and operational data management.

The platform provides dedicated applications for web, mobile, and backend services, allowing administrative and field workflows to operate through a shared platform.


Platform

                         Assign Meter
                              │
              ┌───────────────┼───────────────┐
              │               │               │
              ▼               ▼               ▼
          Web App         Mobile App       Backend
          Next.js         Expo / RN       Node.js
              │               │               │
              └───────────────┼───────────────┘
                              │
                              ▼
                       Platform Services
                              │
                    ┌─────────┴─────────┐
                    │                   │
                 MongoDB              AWS S3

Applications

Web

The web application provides the primary browser-based interface for management and administrative workflows.

Technology

  • Next.js
  • React
  • Tailwind CSS
  • React-based UI components
  • Maps
  • Real-time communication

Repository:

Assign-Meter-Web


Mobile

The mobile application provides a field-oriented interface for users who work with the platform from mobile devices.

Technology

  • Expo
  • React Native
  • Expo Router
  • NativeWind
  • React Native Paper
  • Maps
  • Camera
  • Location
  • Secure Storage

Repository:

Assign-Meter


Backend

The backend provides the central API and business logic shared by the platform clients.

Technology

  • Node.js
  • Express
  • MongoDB
  • Mongoose
  • JWT
  • Role-Based Access Control
  • AWS S3
  • Server-Sent Events
  • Web Push

Repository:

Assign-Meter-Backend


Core Capabilities

Assign Meter is designed around field-operation workflows including:

  • User and workforce management
  • Meter management
  • Meter assignments
  • Operational tracking
  • Role-based access control
  • Authentication
  • Location-aware workflows
  • Map-based interfaces
  • File and spreadsheet processing
  • Image capture and upload
  • Real-time application updates
  • Browser and mobile notifications
  • Reporting and operational data

Architecture

The platform follows a client-server architecture.

┌───────────────────────┐
│       Web Client      │
│       Next.js         │
└───────────┬───────────┘
            │
            │
┌───────────▼───────────┐
│     Backend API       │
│   Node.js / Express   │
└───────────┬───────────┘
            │
            ├──────────────► MongoDB
            │
            ├──────────────► AWS S3
            │
            ├──────────────► Notifications
            │
            └──────────────► Real-Time Events
            │
┌───────────▼───────────┐
│     Mobile Client     │
│     Expo / React      │
│       Native          │
└───────────────────────┘

The web and mobile applications act as clients of the central backend.

Security-sensitive operations, authorization, validation, and business rules are enforced by the backend.


Authentication & Authorization

Assign Meter uses authenticated access and role-based permissions.

The general security model is:

User
 │
 ▼
Authentication
 │
 ▼
Identity
 │
 ▼
Role
 │
 ▼
Permission
 │
 ▼
Resource
 │
 ▼
Action

Frontend and mobile applications provide the user experience around permissions, while the backend remains responsible for enforcing authorization.


Real-Time Communication

The platform supports real-time application updates.

The general flow is:

Backend Event
      │
      ▼
Real-Time Connection
      │
      ▼
Web / Mobile Client
      │
      ▼
Application State
      │
      ▼
Updated Interface

This allows operational information to be updated without requiring users to manually refresh the application.


File Storage

The platform integrates with object storage for file-related workflows.

A preferred architecture for large uploads is:

Client
  │
  │ request upload authorization
  ▼
Backend
  │
  │ signed upload URL
  ▼
Client
  │
  │ direct upload
  ▼
AWS S3

This avoids unnecessarily routing large files through the application server.


Repository Structure

The organization currently contains the primary Assign Meter applications:

Assign-Meter/
│
├── Assign-Meter
│   └── Mobile Application
│
├── Assign-Meter-Web
│   └── Web Application
│
└── Assign-Meter-Backend
    └── Backend API

The repositories may evolve as the platform grows.


Technology

Frontend

Next.js
React
Tailwind CSS
Sass
Radix UI
Leaflet
Google Maps

Mobile

Expo
React Native
Expo Router
NativeWind
React Native Paper
React Native Maps
Expo Camera
Expo Location
Expo Secure Store

Backend

Node.js
Express
MongoDB
Mongoose
JWT
AWS S3
Server-Sent Events
Web Push

Development Philosophy

Assign Meter is developed with a focus on:

  • Practical field workflows
  • Reliable data management
  • Secure authentication
  • Server-side authorization
  • Maintainable application architecture
  • Cross-platform functionality
  • Real-time operational updates
  • Scalable file handling
  • Clear separation between clients and backend services

Getting Started

Each application has its own development environment and setup instructions.

Start with the relevant repository:

Web

Open Web Repository

Mobile

Open Mobile Repository

Backend

Open Backend Repository

Follow the README inside each repository for installation, configuration, development, and deployment instructions.


Project Status

Assign Meter is an actively developed platform.

The architecture and applications continue to evolve as new field-operation requirements, integrations, workflows, and platform capabilities are introduced.


Contributing

Contributions, improvements, bug reports, and technical discussions are welcome.

Before contributing:

  1. Read the relevant repository README.
  2. Understand the existing architecture.
  3. Create a dedicated branch.
  4. Keep changes focused.
  5. Run linting and relevant tests.
  6. Verify the production build where applicable.
  7. Submit a clear pull request.

License

License information is defined at the individual repository level until a unified platform license is established.


Assign Meter

One platform. Multiple clients. One operational system.

Pinned Loading

  1. Assign-Meter-Web Assign-Meter-Web Public

    Assign Meter Web provides the frontend interface for managing meters, field operations, assignments, users, locations, reports, and other operational workflows through a centralized web application.

    JavaScript

Repositories

Showing 4 of 4 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…