Contributing to Dj Urls Panel or setting up for local development.
- Python 3.9+
- Git
- Docker (recommended)
git clone https://github.com/django-control-room/dj-urls-panel.git
cd dj-urls-panelmake docker_up # Start all services
make docker_shell # Open shell in container# Create virtual environment
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# Install package and dependencies
make install
# or
pip install -e .
pip install -r requirements.txtcd example_project
python manage.py migrate
python manage.py createsuperuserpython manage.py runserverVisit: http://127.0.0.1:8000/admin/
# Docker
make test_docker
# Local
make test_localpytest tests/test_admin.py -v
pytest tests/test_admin.py::TestAdminIntegration::test_urls_panel_appears_in_admin_indexpytest --cov=dj_urls_panel tests/dj-urls-panel/
├── dj_urls_panel/ # Main package
│ ├── views.py # Django views
│ ├── urls.py # URL patterns
│ ├── models.py # Placeholder model
│ ├── admin.py # Admin integration
│ └── templates/ # HTML templates
├── tests/ # Test suite
│ ├── base.py # Test base class
│ ├── test_admin.py # Admin integration tests
│ └── conftest.py # Pytest configuration
├── example_project/ # Example Django project
├── docs/ # Documentation
└── Makefile # Development commands
- Follow PEP 8
- Use type hints where helpful
- Write docstrings for public methods
- Keep functions focused and small
make install # Install dependencies
make test_local # Run tests locally
make test_docker # Run tests in Docker
make docker_up # Start Docker services
make docker_down # Stop Docker services
make docker_shell # Open shell in container- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Run test suite
- Submit pull request