A simple website for a school called Ram Krishna Paramhans Inter College situated in Nagal, Saharanpur, UP, India.
This website allows admin of the site to dynamically add notifications, schools, gallery images for this school. This website is created using Django - a popular web framework in Python which allows rapid development of features with a built in admin panel which was essential for this use case. The website uses Postgresql for database which makes it quite flexible with the scope of adding/removing fields in the database and create models for catering future requirements. For the time being this web app can be found at https://rkphic.herokuapp.com/
Made with ❤️ by @apfirebolt
Please find me here
- Displays static and dynamic data through Django Jinja templates in a multi-page application written in Django.
- Has a built in admin panel through which admin can manipulate data of the website smoothly.
- Models are created for students, notifications and gallery. More models can easily be created as per future requirements.
- Hosted on Heroku through pipeline for smooth deployment when ever something is pushed on master branch,
- AWS S3 buckets can be easily configured to store static and media files.
The project is created like a conventional Python and Django project. A virtual environment is created and all the relevant packages are installed through reading 'requirements.txt' file. Multiple environments are setup with different settings. Environment variables are directly read from Heroku for prod environment.
Procfile defines script to run on heroku server when the app starts or a new deployment is completed.
web: python manage.py collectstatic --no-input; gunicorn rkphic_school.wsgi --log-file - --log-level debug
This serves the Django app through gunicorn server after collecting the static files.
Runtime.txt file was included to specify the version of Python to be used while installing packages.
None so far, but heroku free tier database keeps on changing credentials. More would be added as they are discovered.
- Expect UI improvements in near future for this app using Bootstrap as per feedback.
- New functionalities might be added in terms of changing models and views.
Would be added later