Skip to main content

SmartEstate

About

Django app for real estate brokers. If you are a real estate broker, you can use this to power your website, and the backend will allow you to manage your listings, apartments, offers for sale, as well as potentials - renters, buyers, etc.

Features

  • Manage properties for rent and for sale
  • Manage potential clients
  • Manage your website, add custom pages
  • Multilingual database: English, German, French, Spanish, Italian
  • Your clients can filter available listings based on size, number of rooms, rent, etc.
  • Vice versa: In SmartEstate's backend broker app, if your apartment has 3 rooms and monthly rent of $1000, you can click on it and SmartEstate shows you all registered clients who might be interested.

Installing/usage

Pull latest Docker image

docker pull belalibrahim/smartestate:latest

Alternative: minimal docker-compose.yml

Paste the following into an empty file, name it docker-compose.yml, run docker compose up -d, and then brose to http://localhost (or whatever host you specified).

services:
  db:
    image: mysql:8.3
    restart: always
    environment:
      MYSQL_DATABASE: smartestate
      MYSQL_USER: smartestate
      MYSQL_PASSWORD: insecure-please-change
      MYSQL_ROOT_PASSWORD: insecure-please-change
    volumes:
      - db_data:/var/lib/mysql
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
      interval: 5s
      timeout: 5s
      retries: 10

  web:
    image: belalibrahim/smartestate:latest
    restart: always
    ports:
      - "80:8000"
    environment:
      DEBUG: 0
      SECRET_KEY: insecure-please-change
      ALLOWED_HOSTS: localhost,127.0.0.1
      CSRF_TRUSTED_ORIGINS: "http://localhost,http://127.0.0.1"
      # Alternative: use these instead, if you have a public webserver
      #ALLOWED_HOSTS: your-web-host.com
      #CSRF_TRUSTED_ORIGINS: "https://*.your-web-host.com"
      DATABASE_ENGINE: django.db.backends.mysql
      DATABASE_HOST: db
      DATABASE_NAME: smartestate
      DATABASE_USER: smartestate
      DATABASE_PASSWORD: insecure-please-change
    depends_on:
      db:
        condition: service_healthy

volumes:
  db_data:

Alternative: Run locally from source via Docker Compose

git clone https://github.com/belal-i/smartestate
cd smartestate
docker compose up --detach --build

Advanced: Run locally from source via Django's runserver (for developers)

  • Install platform requirements (for the MySQL driver, see https://github.com/PyMySQL/mysqlclient)

    • Debian/Ubuntu

      apt install  python3-dev default-libmysqlclient-dev  build-essential  pkg-config
      
    • Red Hat / CentOS

      yum install python3-devel mysql-devel pkgconfig
      
    • Other distros / macOS / Windows: See the docs for mysqlclient, you probably have to install similar libraries. Otherwise, if you don't need MySQL (ie. using SQLite locally), you can comment out mysqlclient from the dependencies in pyproject.toml and it should work.

  • Build app from source code:

pip install .
  • Alternative: Install Python package:
pip install --upgrade smartestate
  • cp .env.example .env and configure with appropriate values.
  • python manage.py migrate
  • python manage.py createsuperuser
  • python manage.py runserver
  • Unit tests: python manage.py test

Set up the cookie group in the Django admin, and make it optional for the cookie banner to appear.

Roadmap

This project is still in beta stage, there are still some issues, things might still be a little unstable. However, it's come along nicely. If you decide to use this in production, and encounter issues, please don't hesitate to open a ticket. Also, if you wish to contribute, again, feel free to reach out :-)

Metadata

Release files for smartestate 0.3.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for smartestate 0.3.3
File Size Uploaded
smartestate-0.3.3.tar.gz 23.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for smartestate 0.3.3
File Interpreter ABI Platform
smartestate-0.3.3-py3-none-any.whl Python 3 none any Details

Total release size: 50.2 kB

Release files / smartestate-0.3.3.tar.gz

Download URL smartestate-0.3.3.tar.gz
Size 23.5 kB
Tags Source
SHA-256 checksum
How to use checksums
49a61edd6c7e8b486d57120cc9e2c68ba8f58fb8096f1772d0c2b6902b7e2614
BLAKE2b-256 checksum
How to use checksums
63564ace0ca2e6c335a973cc28bb592c63d33b459b38aa30161e7993d0fd9c8c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / smartestate-0.3.3-py3-none-any.whl

Download URL smartestate-0.3.3-py3-none-any.whl
Size 26.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
feb819262d047b890fd609cef96af091c980d453fdaabc3bd06eb52e82627c74
BLAKE2b-256 checksum
How to use checksums
3bf8eb37ac0b815654c1fc7487eb36c7d55f3ef1e78af601e8a2e85b2cd06ba4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.3.3 This release

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page