Git Product home page Git Product logo

drive_box's Introduction

Drive_BOX

This project was a fundamental backend project that allowed me to apply and enhance my skills in Django, specifically focusing on CRUD operations, email verification, and password handling using tokens. It was a great learning experience that provided valuable insights into model design and the workings of the Django administrator.

Overview-

Drive-BOX is a collaborative platform where users can log in, upload their projects, and collaborate with others. The project is hosted on a web hosting website named "railway," making it accessible to users worldwide. Its functionality is similar to that of GitHub, providing a user-friendly interface for uploading and managing projects.

Technical Details

The project consists of two main applications: "blog" and "user." In the "user" application, I implemented templates for login, logout, profile, and registration pages. Utilising Django's inbuilt crispy forms library, I ensured a responsive and visually appealing design for these pages.

For the "blog" application, I incorporated static files for basic CSS, JS, and Bootstrap to enhance the website's visual appearance. The template section includes pages like "home," "about," and a "base" page, which serves as the inherited page for the entire application. By implementing the base page, I achieved consistency throughout the project, making it more user-friendly.

Assignment Problem Statement:

Part 1:

  1. Create a web-app where a user can login.
  2. User can upload files.
  3. User can view his/her uploaded files.

Part 2:

  1. User can search and view profile of other users.
  2. They can share their uploaded files with any of those users.
  3. Users can see the shared files by other users also in uploaded files.

Additional Features:

  1. In users profile user can set his/her profile picture.
  2. Users can download other users uploaded files.
  3. The user can upload any type of files such as images, videos, text files and also different types of programs like python code, java code, etc.

Technologies Used:

  • Python
  • Django
  • Bootstrap
  • JavaScript

Additional Python Modules Required:

  • Django
  • django-crispy-forms
  • Pillow

Note :

The Secret_Key required for the execution and debugging of project is not removed from the project code. So you can use the project as your college mini-project or by using the project code you can build your own project.

How to contribute?

If you're not comfortable with the command line, here are tutorials using GUI tools.. If you don't have git on your machine, install it.

fork this repository

1. Fork this repository.

2. Clone your forked copy of the project.


git clone https://github.com/<your_name>/drive_box.git

3. Navigate to the project directory ๐Ÿ“ .


cd drive_box

4. Add a reference(remote) to the original repository.


git remote add upstream https://github.com/pratt0007/Drive_BOX

5. Check the remotes for this repository.


git remote -v

6. Always take a pull from the upstream repository to your master branch to keep it at par with the main project(updated repository).

git pull upstream main

7. Create a new branch.

git checkout -b <your_branch_name>

8. Perform your desired changes to the code base on that branch.

9. Track your changes โœ”๏ธ .


git add .

10. Commit your changes.


git commit -m "Relevant message"

11. Push the committed changes in your feature branch to your remote repo.


git push -u origin <your_branch_name>

12. To create a pull request, click on `compare and pull requests. Please ensure you compare your feature branch to the desired branch of the repository you are supposed to make a PR to.

13. Add an appropriate title and description to your pull request explaining your changes and efforts.

14. Click on Create Pull Request.

15 Voila! You have made a PR to Bug Buster's Community Website. Sit back patiently and relax while your PR is reviewed.


Usage :

python manage.py makemigrations

python manage.py migrate

python manage.py runserver

In your web browser enter the address : http://localhost:8000 or http://127.0.0.1:8000/

Picture of Project

Home Page

image

New Post Page

image

Profile Page

image

Login Page

image

Register Page

image

drive_box's People

Contributors

pratt0007 avatar ishaanadarsh avatar pinak-dhir avatar shreyabose04 avatar rounak2001 avatar

Stargazers

 avatar Meghna Sahu avatar

Watchers

 avatar  avatar

drive_box's Issues

readme can be more better? can u assign this to me

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

CRSF Token Problem

When we deploy the project on Railway, the site produces CRSF token error while taking up entries. Sort this issue.

u can add code of conduct and contributing .md can u assign this to me?

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Project Deployment

Deploy the project on any platform that supports the updated postgre DB and add that link to the readme file.

Database Change

The default database of the project is DB SQLite, which is outdated. I want to shift the database to PostgreSQL database which is easy to test and use. This can be done changing the default settings in setting.py file

Email Verification System While Login

An email verification should take place at the time of registration. We can achieve this using python and appending the settings.py file in the project.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.