Readme of cs50 web capstone project. Name: About Me.
This systema allows an administrator to publish events and projects in a automatically way, using django admin. The admin can publish events and projects, each of its category with a text, github link, video and image, so users can know these projects better. Any visitors can register to comment and like posts, events or projects. Javascript, css, html, python and Django were used.
The bio page is a symple html and css page showing a little bit more about me, with the three last projects, that can be visited. This way the user is already attracted to the most important part of the website. The las projects and events are updated automatically when new ones are created.
This page just loads a pdf, as a CV is an important part of the informations for someone looking for a job.
Projects are divided in categories, and event is one of them. Projects have a text, tags, an image, a video and a github project. It becomes easy to add new projects and they will be displayed in the portfolio website, witouth needing to code a new html page. This is made through the django admin. The project can be liked by users or commented. Each page displays one project, and a paginator does the rest to show each project in one page. It is possible to navigate to check all posts of each category. The categories are also in the models.py, making it easy to create new categories.
Events are just a category of posts. This category is not displayed in the projects page. It made easier to code the application, and fully functional yet.
Django admin made it a lot easier to edit, create or delete any new post. Using this functionality, admin can add new things without coding one line.
Javascript was used to make the blog functions. Like button and comments are updated using javascript, allowing just the part of the page of interest, to be uploaded.
All the backend is made with python using Django. Django allows a very friendly way to send informations to the frontend and to work with them. Most of the functionality was made using Django, except the assyncronus parts, where javascript was used.
This project is different of all course´s projects. This application uses the advantages of Django admin to help a developer to publish it´s codes in a different way. Mixing a blog, with a portfolio´s website and a social network, it is possible to show the codes, videos an informations about the applciation but also to cnnect with user and collect feedback. The web application uses models, front-end and backend validation of data, ajax codes to make the interactions with user more attractive and css how no other project has required. The system is highly responsive and allows users to acces it by phone, tablets or computers. The amount of time needed to make the page with a nice appereance, using CSS and HTML, was way higher than any other project. Every detail was a goal of study, since line heights, to paddings and media queries. The frontend and backend validations were thought carefully, also like no other project. The result is also a functional systema, enjoyable to visit and that probably wil help me to get a job.
The dificculty of the project envolved all the needs of a project that will be on air. The next steps are to use informations of the last lectures to put this project online. This way, the cs50 web cycle will be complete, using github actions, tests and everything...
The project is developed using Django v3.2.8 and Python v3.9.7. Javascript, CSS and Html were also used. All the design and code were made by me.