Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.7%) to scientific vocabulary
Keywords
Scientific Fields
Repository
Django LAN
Basic Info
- Host: GitHub
- Owner: starling-cloud
- License: apache-2.0
- Language: Python
- Default Branch: main
- Homepage: https://djangolan.com
- Size: 2 MB
Statistics
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
- Releases: 0
Topics
Metadata Files
README.md
Django LAN
Django LAN is a Django plugin designed to facilitate local area network (LAN) management directly from your Django applications. It provides a suite of tools and custom model fields to manage network configurations, validate network parameters, and interact with network hardware efficiently.
Features
- Network Device Management: Manage and store configurations for various network devices.
- Custom Field Types: Includes custom Django model fields for IP addresses, MAC addresses, CIDR notations, and more.
- Network Validation Tools: Extensive validators for network-related data such as IP addresses, MAC addresses, port numbers, and CIDR blocks.
- Dynamic Form Components: Utilize dynamic form fields that integrate directly with your network management models.
Quick Start
To get started with Django LAN, follow these steps:
Prerequisites
- Django 3.1 or newer
- Python 3.6 or newer
Installation
- Install Django LAN:
bash
pip install django-lan
- Add
django_lanto your INSTALLED_APPS insettings.py:
python
INSTALLED_APPS = [
...
'django_lan',
...
]
- Run Migrations:
bash
python manage.py migrate
Usage
To use the custom model fields provided by Django LAN in your models:
``` python from django.db import models from django_lan.fields import IPAddressModelField, MACAddressModelField, PortNumberModelField
class NetworkDevice(models.Model): ipaddress = IPAddressModelField() macaddress = MACAddressModelField() port = PortNumberModelField() ```
Validators
Apply validators in your forms like this:
``` python from django import forms from djangolan.validators import validateipaddress, validatemac_address
class NetworkDeviceForm(forms.ModelForm): class Meta: model = NetworkDevice fields = 'all'
def clean_ip_address(self):
ip_address = self.cleaned_data.get('ip_address')
validate_ip_address(ip_address)
return ip_address
```
Documentation
For more detailed documentation, visit Django LAN Documentation.
Contributing
Contributions are welcome! Please read our Contributing Guide for details on how to propose bugfixes and improvements, and how to build and test your changes to Django LAN.
License
Distributed under the Apache 2.0 License. See LICENSE for more information.
Owner
- Name: Starling
- Login: starling-cloud
- Kind: organization
- Email: info@starling.associates
- Location: Netherlands
- Website: https://www.starling.associates
- Twitter: starling_cloud
- Repositories: 44
- Profile: https://github.com/starling-cloud
Insight + Strategy + Design
Citation (CITATION.cff)
cff-version: 1.2.0
title: Django LAN
version: 0.0.1
date-released: 2024-07-01
url: "https://www.djangolan.com"
repository-code: "https://github.com/starling-cloud/django-lan"
license: "Apache License, Version 2.0"
message: >-
If you use Django LAN, please cite it using
the metadata from this file.
type: software
authors:
- given-names: Lars Bastiaan
family-names: van Vianen
email: lars@starling.studio
affiliation: Starling Associates
orcid: 'https://orcid.org/0000-0002-8790-8630'
GitHub Events
Total
- Delete event: 1
- Push event: 24
- Pull request event: 1
Last Year
- Delete event: 1
- Push event: 24
- Pull request event: 1
Dependencies
- actions/checkout v4 composite
- actions/setup-python v5 composite
- actions/checkout v4 composite
- actions/checkout master composite
- actions/create-release v1 composite
- actions/download-artifact v4 composite
- actions/setup-node v4 composite
- actions/upload-artifact v4 composite
- actions/upload-release-asset v1 composite
- python 3.12-slim build
- pytest ^7.0 develop
- Django ^4.0
- python ^3.8