Skip to content

A gateway to my Django Projects. Working URLs, repository links, brief descriptions and image showcasing, all here in one go.

Notifications You must be signed in to change notification settings

RenzoMurinaCadierno/DjangoProjectsGateway

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 

Repository files navigation

Welcome to my Django Projects' gateway!

Overview

I have chosen Django as my current backend framework, and I am learning as much as I can from it, one step at a time. I'm more than pleased to share some of my projects here so that you can test them out and come along me on my way to learn one of the three things I'm passionate about: web/app development.

Following up you will find the links to the working URLs of my Django projects and to their respective GitHub repositories, as well as a brief description and image showcase of their basic functionality down below those links. If you want a more detailed description, please feel free to check the README files on each of those project's repository.

The projects are ordered from newest to oldest. Please, do keep in mind that they are hosted in a free version of Heroku, since I do not intend to monetize them, I've just done them for the sake of learning, filling up my portfolio and having fun of course. As free Heroku hosting has dynos that reset each time the requested server wakes up, ALL USER UPLOADED MEDIA FILES ARE DELETED if 30 mins have gone by since the last visit. I mention this because some projects might seem to be broken but they are not (like RNMC Hunt, since it does not show thumbnails or image bodies). Just upload a couple yourselves and you will notice the change.

Links

Descriptions, functionality and image showcasing

RNMC Movies

Description and functionality

A SPA where you can upload movie's titles and descriptions and rate them from 1 to 5 stars.

This is a first attempt at combining Django and React, the former to handle the consumable web API and the latter to deal with all views. It is fully functional though it is just a proof of concept. Alas, there are still some things to correct in it to make it work perfectly. All CRUD operations are dealt with, so you can upload a movie title and description, rate, edit and delete it. You can signup and login as a user, too. Attempting to access any view without being logged in will result in a crash.

This one is not intended to be a fully UX-friendly site, since, as mentioned, it is just a proof of concept to learn how to combine React and Django. Be warned that you will come across some wonky behavior. The backend is hosted in a free Heroku server for which Authentication and CRUD operations might take a while, so expect a delay between a click and the server's response. Error handling was very lazy for my part, that's the reason for which you might make the app crash if you do not do things in their intended way. Besides that, I think it was a very good learning experience which fortified my thoughts on AJAX being one of the best things ever for web development.

Image showcase

  • SPA (part 1): Login. If you already have an account, otherwise, click where instructed to sign up.

Login

  • SPA (part 2): Signup.

Signup

  • SPA (part 3): Once logged in, you are taken to the movies list.

Movie List

  • SPA (part 4): Click on "Add movie" to create a new movie object by its title and description.

Add a movie

  • SPA (part 5): Click on the movie title, to read its description and rating, and to rate it.

Movie details

  • SPA (part 6): Rate it by clicking on the stars below. The rating is updated automatically.

Rating the movie

  • SPA (part 7): Click on the pencil to edit the movie.

Editing the movie

  • SPA (part 8): The movie details after editing it.

Details after editing

  • SPA (part 9): Finally, you can remove a movie by clicking on the bin.

Movie list after deleting a movie

RNMC Videos

Description and functionality

A web app where you can create your own video galleries and fill them up with YouTube videos. Any user can see them, so you are free to share them with the world or keep them as a personal video library anytime you wish to rewatch them.

Both function and class-based-views are used, the former to handle generic operations, and the latter to deal with the database through models.py. AJAX is used to enhance UX as it retrieves YouTuve videos in real time while typing on the search bar. Please, do not I am using a free YouTube API for developers, so the search quota is small, but you might look for ten or fifteen videos with no problems. Six will display at a time on each search because of this same reason.

Image showcase

  • A very basic home page (part 1), I aim for functionality.

Basic landing page

  • Home page (part 2), shows most popular and recent galleries.

Most popular galleries

  • Django's signup form, styled.

Signup

  • Once a user is created, it auto-logins and redirects to galleries to create one.

Galleries

  • Naming and creating a video gallery.

Creating gallery

  • User's video galleries page, showing the created galleries.

Galleries

  • Adding a video to a gallery. You can paste the link or search for the video. AJAX will do the rest.

Adding video

  • AJAX rendered response.

Adding video

  • Gallery with some added videos.

Gallery with videos

  • User video galleries page, now containing the created gallery.

Gallery page

  • Home page (part 3), now showing the created gallery as one of the recently created ones.

Adding video

RNMC Hunt

Description and functionality

A site designed as a 'kickstarter' page, containing only the foundations (root functionality) of it. Users can sign up and post a product/service/idea they desire, which includes a thumbnail, an image and a description. It will be listed on the main site and logged in users can view, upvote or downvote it (once per user).

Function based views are used throughout the whole project, so forms are typed manually. Authentication and permissions are manually dealt with, and user uploaded media files are stored in the hosting server.

Please note that this project is hosted in a free development version of Heroku, and as which, dynamos reset each 30 minutes. When they reboot, they render the whole app from scratch DELETING user uploaded media files. That is the reason this website may seem broken with no images showing. Create a product yourself to check it out in all of its glory.

Image showcase

  • Home page (part 1), when it is empty. That is, when no projects are uploaded.

Home page (empty)

  • Posting a product/service/idea after logging in.

Posting an item

  • After posting, this is the item's individual site users can get into to read and upvote.

Item's site

  • Home page (part 2), once the product is added and upvoted. The page will keep on filling up as long as more products are added to it.

Home page with the added product

RNMC Social

Description and functionality

The basic foundations of a social media network web/app. You can sign up, log in, create groups, join groups, comment in groups, read other users' groups and comments, and see your own comments history. Additionally, you can delete your own comments if you desire.

A model combining function-based and class-based views with mixins and decorators are used to authenticate users and restrict their access to other users' data asides from viewing their comments and groups. Most form-related site functionalities are handled manually, as a learning process.

Image showcase

  • Home page, a simple landing page that invites you to read the instructions.

Home page

  • Once logged in, you can create a group yourself by giving it a name and a description.

Group creation

  • You will be redirected to the group's page. Member count is set to one as you are the creator by default, and you are given the option to leave. Posts will appear below.

Group page

  • Your created group will appear on the list of available groups to join, by clicking on Group's navlink above.

Available group's list

  • Entering a group gives you the chance to post a commentary.

Commenting on a group

  • And it will appear in the group's page, from most recent to oldest. You are given the chance to delete the comment.

Comment list

  • By cicking on your username in the navlink above, you will be directed to your comments history.

User's comment history

RNMC Blog

Description and functionality

The basic foundations of a blogging web/app. As a user, you are limited to read the admin's posts and comment on them. Your comment will not be immediately approved, since the admin has the ability to do so. As an admin, you can create posts, edit them, edit or delete user comments, and approve them before they are uploaded to the post itself.

A much basic version of the functionality applied in RNMC Social is used here, since this blog served as the foundations to it. Some widgets were added, like the medium text editor. It was an fun little headache, but I am really comfortable with it as a first attempt at Django.

Image showcase

  • Home page with one post in it.

Home page

  • Post's page with its body and comments.

Post page

  • Adding a commentary.

Adding commentary

  • Using medium text editor to style the commentary (by highlighting it).

Styling commentary

  • And of course, as an admin, the page to create a new post.

Creating post

Thank you for reading and for taking your time to check these projects out!

About

A gateway to my Django Projects. Working URLs, repository links, brief descriptions and image showcasing, all here in one go.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published