Live Demo: https://www.showyourspot.com
A social platform to share images of the places you love, built with Django.
Developer: Diane Corriette - GitHub & Website
- Features
- Tech Stack
- Prerequisites
- Installation
- Configuration
- Usage
- Testing
- Deployment
- Contributing
- License
- Contact
- 🔐 Authentication: User registration, login/logout, password reset
- 👤 Profiles: Avatar upload, bio, and profile editing
- 📸 Photo Sharing: Upload, edit, and delete spot photos
- 🗺️ Geolocation: Tag spots on an interactive map
- 🔍 Discovery: Browse by location, tags, or popularity
- ❤️ Engagement: Like, comment, and follow other users
- 📝 Blog Posts: Create and browse travel stories
| Layer | Technology |
|---|---|
| Backend | Django |
| Frontend | Django Templates, HTML5, CSS3, JS |
| Database | MariaDB (dev), MariaDB (prod) |
| Storage | Local Filesystem / Django |
| Server | Gunicorn / Passenger WSGI |
| Testing | Pytest |
Dependencies are listed in requirements.txt.
- Python 3.8+
- pip
- virtualenv (recommended)
-
Clone the repository
git clone https://github.com/djangify/our-spot.git cd our-spot -
Create & activate a virtual environment
python3 -m venv venv source venv/bin/activate # Windows: venv\\Scripts\\activate
-
Install dependencies
pip install -r requirements.txt
-
Apply database migrations
python manage.py migrate
-
Create a superuser
python manage.py createsuperuser
-
Collect static assets
python manage.py collectstatic
-
Run the development server
python manage.py runserver
Visit http://localhost:8000 to see the app in action.
-
Copy the example environment file:
cp .env.example .env
-
Update the following in
.env:SECRET_KEY=your_secret_key DEBUG=True ALLOWED_HOSTS=localhost,127.0.0.1 DATABASE_URL=sqlite:///db.sqlite3 # or your production DB URL
- Register or log in.
- Upload your favorite spots and tag them on the map.
- Browse, like, comment, and follow other explorers.
- Write and share travel stories in the blog section.
Admin panel available at /admin/.
Run the test suite:
pytestThis app can be deployed on cpanel or on platforms like Railway. Key steps:
- Set environment variables in your host.
- Use PostgreSQL for production database.
- Configure settings for static/media files.
- Ensure
DEBUG=Falseand properALLOWED_HOSTS.
Contributions welcome! Please follow these steps:
- Fork the repo.
- Create a branch:
git checkout -b feature/YourFeature. - Commit your changes:
git commit -m 'Add YourFeature'. - Push:
git push origin feature/YourFeature. - Open a Pull Request to
main.
Ensure tests pass and code is linted before submitting.
Distributed under the MIT License. See LICENSE for details.
- 🌐 Website: showyourspot.com
- 📂 Repo: djangify/our-spot
- 👩💻 Developer: Diane Corriette (@todiane)
Live Demo: https://www.showyourspot.com