Django : NepaliGallery Website
1.1 Requirements
For this task you must design and implement your own website. You are free to choose your own ideas for this website. Your website must cover the following points:
- You must be creative in designing your website. Your website needs to offer novel solutions or distinct features to other existing/similar websites.
- You must use tools and technologies taught during this module such as HTML, CSS and JavaScript.
- You must use either Flask or Django as a templating framework.
- You must use either MySQL or PostgreSQL as database.
- You must NOT use commercial software and/or 3rd party packages/libraries. For example, using Dream-weaver or Drupal to create your website is not allowed.
You must submit a reflective report for the website you created. The word limit for your report is 1,000 (+/- 10%) words. Your report must:
- Consider what you have learnt over the term.
- Discuss each of the technologies you have used in creating the website.
- Be reflective. For example, you must discuss your website was built in this way, and what you would do differently in the future.
- Make good use of illustrative examples such as screenshots and code snippets.
- On the cover page of your report, you must clearly mark a link to your Github repository where the source codes of your website can be accessed.
- On the cover page of your report, you must clearly mark a link to your YouTube videocast.
Chapter 1 Introduction
1.Brief Introduction of the system
I have design clear and attractive website which includes different Html, CSS and JavaScript codes, well placed nav bar, image slider etc. I have included background image which can easily attract visitors view. Every JavaScript code that I have used helps my website run fast and functionally. I have used MySQL as the database system. Video I have made and upload describes even more clear about my web development.
2.Features of the system
My feature system includes a quality web content. It is clear and user friendly for the navigation. Although it is very simple and professional web design. Every links that I have used is very clear and connect speedy. It is well responsive also. My website and its content can optimize for different browsers, devices and users. It is one of the main features you need in your websites because if your website is not optimized well for mobile data users and download speed, users may leave your website. Responsive web design is key.
3.Aims
My aims are to gain even more knowledge from this subject web development which could help me more in future also. I have improved certain things about designing only but I need to learn more things about backend and database system to be successful in future.
4.Objectives
One of the basic objectives of my websites is that user can view my project at any time. It is very fast and easy for anyone. There is less chances of getting error when opening the website. It is user authenticate platform so user can update any information’s or id they can.
5. What I have learned
I have learned to use bootstrap codes, JavaScript function and codes which I didn’t knew before. Learning from basic things to the vast one makes me even more clear. I have learned how to make my website viewed on mobile size using bootstrap rather than media query. Using bootstrap makes my work even faster.
Chapter 2 Frontend
- For front end I have used different technologies such as html, CSS and JavaScript. Html and CSS is very easy to use whereas JavaScript makes me a bit hard to learn. But I have used JavaScript code in certain place which made my website even more faster and attractive.
2. With the utilization of responsive design, all the contents and pages easily blend across all the devices and screen resolutions. And whenever you are viewing the website on your mobile phones or a laptop, it is very easy to navigate in spite of the differing screen sizes. With responsive design your user can easily read and navigate the site with the minimum resizing and scrolling.
Chapter 3 Databases
- I have used MySQL as the database for the for website developing and it is very comfortable to linked with my project.
- There are some advantages and disadvantages of MySQL that I have noted down:
Advantages
- It is very fast and easy to use.
- It is widely adopted
Disadvantages
- It is very hard to scale
- It always supports mainly and readable contents.
Chapter 4 Backend
- My backend process is very clear and very easy to use also. I have used all needed codes and function in PyCharm. Different functions for login, signup form, and add, update and delete are completely set up and utilized. I have also included URLs, views system forms and app. I have linked different html pages perfectly. It can run at anytime with different browsers.
- Django is the technology that I have used as python frameworks when developing web. I think Django is one of the best and reliable technology for any web developers. I have installed it easily and migrate it with MySQL for the backend process too.
3. It is used when you are testing your website in different platforms. It also provides different services to your websites in different devices such as smartphones, pc, laptops etc.
Chapter 5 Project Issues
1.Issues during the project development
During the project I was unable to view my updated images which was solved later. Browser was not working properly when I was running my project. I tried multiple times for multiple file upload which was unsuccessful, so I decided to implement this work on future update. I had issues sending mail while resetting password which was solved later.
One of the main limitations of my websites is the contents that I have included during my website. All contents are clearly visible and easy to use. Different icons that I have set in my website is working properly. Navigation bar is easily navigating with each other. User can easily choose and input their username password of their own while logging in signing up their personal data.
2.Future Works
Implement like and unlike button on this photography website. Nepali Gallery could be better if the artists could sell their photography and art in this website. Payment system is left for future work. Multiple file upload is missing for users will be implemented later. I am happy to say that is less future work to be done as this website works wonderfully for my project criteria.
Conclusion
After the completion of Modern web design, I came to know about bootstrap, JavaScript and Django. Website became easier to design with bootstrap. Lot of line of code were already defined. Work flow became easier, lots of time were saved. While creating slider I implemented JavaScript to make it functional. Backend was done using Django and MySQL as database. I learned that we could design database table form models.py which can be easy later for migration to new system. Over all this project was fun to implement my course work.
Website : nepaligallery.com