Skip to content

solid-octo-eureka is a Django-based Library Management System for managing books, members, borrowings, and overdue reminders. With a clean, modern dashboard, it’s easy to use, customizable, and perfect for schools, personal projects, or learning Django development.

Notifications You must be signed in to change notification settings

shaanlabs/solid-octo-eureka

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

solid-octo-eureka 📚🚀

"A library is not a luxury but one of the necessities of life." – Henry Ward Beecher

Welcome to solid-octo-eureka – the Library Management System that even your librarian would high-five you for! This Django-powered project is your one-stop solution for managing books, members, borrowings, and overdue reminders, all wrapped in a modern, user-friendly dashboard. Whether you're a code newbie or a seasoned dev, this repo is here to make your life easier (and maybe a little more fun).


📦 Features

  • 📊 Librarian Dashboard: Stats, charts, and a bird’s-eye view of your library.
  • Quick Issue/Return: No more hunting for forms – issue or return books in seconds.
  • 🔔 Overdue Notifications: Never let a book go missing (or a member go un-reminded) again.
  • 📧 Email Reminders: One click, and your members get a gentle nudge.
  • 📤 Export Data: Download books, borrowings, and overdue lists as CSV (Excel fans, rejoice!).
  • 🌑 Dark Mode: Because your eyes deserve it.
  • 🕵️‍♂️ Activity Feed: See who borrowed what, and when.
  • 🛡️ Admin Panel: Full Django admin for power users.

🛠️ Tech Stack

  • Backend: Python 3.8+, Django 4.x
  • Frontend: HTML5, CSS3, Bootstrap 5, JavaScript, Chart.js
  • Database: SQLite (easy mode), but ready for PostgreSQL/MySQL
  • Other: Django Admin, Django Templating, pip

😎 Quick Glance (Screenshots)


🚀 Getting Started (a.k.a. Let’s Get This Party Started)

1. Prerequisites

  • Python 3.8 or higher
  • Git (because copy-paste is so 2005)
  • (Optional) Virtualenv for a clean workspace

2. Clone This Repo

git clone https://github.com/yourusername/solid-octo-eureka.git
cd solid-octo-eureka

3. Set Up Your Virtual Environment

python -m venv venv
# On Windows:
venv\Scripts\activate
# On macOS/Linux:
source venv/bin/activate

4. Install All The Things

pip install -r requirements.txt

5. Migrate Like a Pro

python manage.py migrate

6. Become the Superuser You Were Born to Be

python manage.py createsuperuser

7. Fire Up the Server

python manage.py runserver

Visit http://127.0.0.1:8000/ and bask in your glory.


🧑‍💻 Usage (a.k.a. What Can I Actually Do?)

  • Log in as admin to access the dashboard.
  • Issue or return books with the quick panel.
  • View stats, charts, and recent activity.
  • Export data as CSV (for your inner spreadsheet nerd).
  • Send overdue email reminders with a single click.
  • Manage users, books, and borrowings via the Django admin panel.

🗂️ Project Structure (No Surprises)

solid-octo-eureka/
│
├── companyapp/                # Main Django app
│   ├── migrations/
│   ├── static/companyapp/     # CSS, JS, images
│   ├── templates/companyapp/  # HTML templates
│   ├── admin.py
│   ├── models.py
│   ├── views.py
│   └── ...
│
├── project/                   # Django project settings
│   ├── settings.py
│   ├── urls.py
│   └── ...
│
├── db.sqlite3                 # SQLite database (development)
├── requirements.txt           # Python dependencies
├── manage.py                  # Django management script
└── README.md

🏗️ Development Workflow

  • Static files: Drop your CSS/JS in companyapp/static/companyapp/.
  • Templates: Edit HTML in companyapp/templates/companyapp/.
  • Models: Your data lives in companyapp/models.py.
  • Views: Business logic in companyapp/views.py.
  • URLs: Route traffic in companyapp/urls.py and project/urls.py.

Useful Commands

  • Run tests:
    python manage.py test
  • Collect static files (for production):
    python manage.py collectstatic

🧪 Testing

  • Write tests in companyapp/tests.py.
  • Run all tests with:
    python manage.py test

🚢 Deployment

  • For production, use PostgreSQL or MySQL (SQLite is for local heroes).
  • Set DEBUG = False in project/settings.py.
  • Use a WSGI server (Gunicorn, uWSGI) and a web server (Nginx, Apache).
  • Configure static/media file serving.
  • Set up environment variables for secrets (don’t be that person who commits passwords).

🤝 Contributing (We Love Pull Requests!)

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/YourFeature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin feature/YourFeature)
  5. Open a Pull Request

If you make us laugh in your PR description, you get bonus points (redeemable for good vibes).


📜 License

MIT. Because sharing is caring.


📬 Contact


“May your code be bug-free and your books always returned on time!”

About

solid-octo-eureka is a Django-based Library Management System for managing books, members, borrowings, and overdue reminders. With a clean, modern dashboard, it’s easy to use, customizable, and perfect for schools, personal projects, or learning Django development.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages