Skip to content

Academia is a Django-based Campus Repository designed to streamline the file-sharing process between teachers and students. The platform offers distinct homepages for both teachers and students, each tailored to their specific needs.

License

VishalTheHuman/Academia-Campus-Repository

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

20 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Academia - Campus Repository : Django πŸ“”

banner

Description

Academia is a Django-based Campus Repository designed to streamline the file-sharing process between teachers and students. The platform offers distinct homepages for both teachers and students, each tailored to their specific needs. Teachers can efficiently manage files, set permissions, and maintain control over their uploads. On the other hand, students gain easy access to educational resources and a seamless file search experience.

Features

Teacher Homepage

  • Upload Files: Teachers can upload files directly to the repository, making educational materials easily accessible to students. πŸ“€

  • Delete Files: Teachers have the capability to remove files, ensuring content relevance and organization within the repository. πŸ—‘οΈ

  • Set Permission Access: Control file access by setting permission levels. Teachers can manage who can view and download their uploaded files. πŸ”’

  • File Filtering: Teachers can view only the files they have uploaded, creating a personalized and organized experience. πŸ“‚

Student Homepage

  • View All Files: Students have access to a comprehensive list of all files uploaded by teachers, facilitating easy discovery of educational resources. πŸ‘€

  • Download Files: Students can download files uploaded by teachers, enabling offline access to course materials. πŸ“₯

  • Search Functionality: An efficient search feature allows students to find files by their names, making it simple to locate specific educational resources. πŸ”

Tech Stack

  • Django: The web application is built using the Django framework, providing a robust and scalable foundation for campus repository management. 🐍

  • Python: The backend logic and functionality are implemented using Python, ensuring a clean and efficient codebase. 🐍

  • SQLite Database: The project utilizes SQLite for database management, offering a lightweight and easily deployable solution. πŸ—ƒοΈ

  • HTML/CSS/JavaScript: The frontend is designed using a combination of HTML, CSS, and JavaScript to create a user-friendly and responsive interface. 🌐

Setup

Step-by-step instructions to set up and run the project.

Prerequisites

  1. Download Python:

    • Visit the Python Download Page to download the latest version of Python.
    • Follow the installation instructions for your operating system.
  2. Get Pip:

    • Pip usually comes bundled with Python installations after version 3.4. If you need to install or upgrade it, follow the instructions on the Pip Installation Guide.

Project Setup

  1. Install Django:

    • Open a terminal or command prompt.

    • Run the following command to install Django:

      pip install django
  2. Install SMTPMail and MIME:

    • Run the following commands to install the required packages:

      pip install smtpmail
      pip install mime
  3. Set Absolute URLs for Images:

    • Open login/views.py and teacherhome/views.py.

    • Locate the URL for textLogo.png in both files.

    • Replace the relative URL with an absolute URL. Example:

      # Before
      img_url = 'textLogo.png'
      
      # After
      img_url = 'D:/path/to/the/image'
  4. Change Gmail and Password

    • Open login/views.py and teacherhome/views.py.

    • Locate the URL for MAIL_ID and PASSWORD in both files.

    • Change the password and email to your desired one. Refer here : Steps to Create App Password : Google

      MAIL_ID = "ENTER_YOUR_GMAIL"
      PASSWORD = "xxxx xxxx xxxx xxxx"

Database Setup

  1. Run Migrations:
    • In the root directory of your project, run the following commands to set up the database:

      python manage.py makemigrations
      python manage.py migrate

Run the Project

  1. Start the Development Server:
    • Run the following command to start the development server:

      python manage.py runserver
    • Visit http://localhost:8000/ in your web browser to view the project.

User Interface (UI) and Email Client

login signup no access 404 student home teacher home file notification forgot password

Getting Started

To set up and run Academia locally, follow the instructions in the Project Setup Guide provided in the repository.

Contributing

Contributions are welcome! 🀝

License

This project is licensed under the MIT License. Feel free to use, modify, and distribute the code as per the terms of the license. πŸ“„

About

Academia is a Django-based Campus Repository designed to streamline the file-sharing process between teachers and students. The platform offers distinct homepages for both teachers and students, each tailored to their specific needs.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published