Skip to content

Zylanera/ipdoc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ipDoc

Description

This project is a simple Node.js application for documenting IP-related information. It provides a web interface and uses a local JSON file for storage.

The application is intended for internal documentation purposes, small teams, or learning scenarios where a minimal, file-based solution is sufficient.

⚠️ This project currently only supports IP addresses in the format 192.168.0.x. IP addresses in other formats are not supported yet. ⚠️

Architecture Overview

The project is built as a small Express.js server that:

  • Serves a static frontend from the public/ directory
  • Persists data in a local ips.json file
  • Runs without an external database

Technology Stack

  • Node.js (ES Modules)
  • Express.js
  • File-based storage (JSON)

Project Structure

ipdoc/
├── public/             # Static frontend files
│   ├── styles.css      # CSS styles
│   ├── index.html      # HTML file served by app.js and server.js (frontend)
│   └── app.js          # Web application logic
├── ips.json            # Data storage
├── server.js           # Express server
├── package.json        # Project configuration and dependencies
└── package-lock.json   # Dependency lock file

Installation

Prerequisites

  • Node.js 18 or newer
  • npm

Setup

# Install dependencies
npm install

The ips.json file will be generated automaticly.

Running the Application

npm start

The application will be available at:

http://localhost:3000

The port can be changed by configuring an .env file (see Configuration).

Data Handling

  • All IP records are stored in ips.json
  • Data is automatically normalized before being saved
  • No external database is required

Note: This setup is not intended for high concurrency or production-grade persistence.

API Behavior

  • Accepts and returns JSON
  • Uses a size limit of 1 MB per request
  • Provides basic error handling for file operations

Configuration

Optional environment variables:

PORT=3000

Limitations

  • No authentication or authorization
  • File-based storage only
  • Not suitable for large datasets or concurrent write access

License

This project is provided under the MIT License.

Maintainer

  • Project: ipDoc
  • Runtime: Node.js / Express

About

A simple Web-App to track your IP address usage

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published