Django school website.
Overview
Django School Website is a comprehensive web application designed to cater for the needs of students, parents, and educators. It serves as a platform for showcasing the courses offered, providing information about the school, and offering engaging blog content for readers.
Features
Blog Features:
View Blog Posts: Users can access a list of blog posts.
View Post Detail: Users can click on a specific post to view its details, including title, image, content, categories, and tags.
Comment on Posts: Users can comment on blog posts.
Filter by Category: Users can filter blog posts by category.
Search Blog: Users can search for specific blog posts using keywords.
Filter by Tag: Users can filter blog posts by tags.
Courses Features:
View Courses: Users can access a list of available courses and view its details, including name, image, duration, price, and related subject..
View Subjects: Users can access a list of subjects.
Registration: Users can register for courses.
Authentication: Users can log in and log out of their accounts.
About Page: Provides information about the website or organization.
Teachers Page: Provides information about the teachers.
Contact Page: Allows users to get in touch with the organization with a contact form designed to send emails to the admin.
User Registration: New users can register for an account.
User Authentication: Registered users can log in and log out of their accounts.
Technologies Used
Django
Django CKEditor
HTML/CSS/JavaScript
Bootstrap
AJAX
JQuery
SQLite (can easily be integrated with other database. eg MYSQL, postgreSQL)
Template used has been included in the root folder in a directory named 'Templates used'
Installation from DockerHub
Run the command docker run --name schoolweb -d -p8000:8000 dannywangari/schoolwebsite:latest
Access the website on a browser of your choice: http://127.0.0.1:8000
Create a superuser: docker exec -it schoolweb python manage.py createsuperuser
NOTE: No persistent database is configured. Any data entered will be lost when the container is destroyed.
Installation from Github
Clone the repository: git clone https://github.com/danielnjama/django-training-project-1.git
Install dependencies: pip install -r requirements.txt
Migrate database: python manage.py migrate
Run the development server: python manage.py runserver
Create a superuser python manage.py createsuperuser
Access the admin dashboard and explore. view the different tables. Carry out the CRUD operations on this dashboard: http://127.0.0.1:8000/admin
Contributing to the project on GITHUB
Contributions are welcome! Please follow these guidelines:
Fork the repository.
Create a new branch for your feature or bug fix.
Commit your changes with descriptive commit messages.
Push your changes to your fork.
Submit a pull request to the main repository.
Credits
Credits to HTML Codex for their perfectly designed and fully responsive templates.