todi-2000 / Resource-Portal

This website can be used to share all the resources directly to students by teachers.

Home Page:https://mmil-resource-portal.herokuapp.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Resource-Portal

This is a Resource Portal for College to encourage sharing of resources like notes, books, etc. online by the teachers to the students.

Table of Contents

  1. Features
  2. Technology Stack to be used
  3. Getting Started
    1. Fork, clone locally and create a branch
    2. Setting Environment First Time
      1. Basic Requirements
      2. Creating Virtual Environment
      3. Installing Requirements
      4. Migrating Database
      5. Create Superuser
    3. Starting Development Server
    4. Leaving the virtual environment
    5. Update requirements file
    6. Update Database
  4. Maintainers

Features

  1. Different entity portal (student, teacher).
  2. Add individual resources for each year, department, etc.
  3. View list of uploaded notes, assignments, books, etc.
  4. Filter resources based on department, year and resource type.
  5. Mark favourites or save resources from list of uploaded one.
  6. Able to download existing resources.
  7. User can add his/her profile details.
  8. Login/Sign Up.

Technology Stack to be used:

  • Frontend: HTML, CSS
  • Backend: Django
  • IDE: VS Code
  • API Testing & Documentation: Postman
  • Version Control: Git and GitHub
  • Database: PostgreSQL
  • Hosting: Heroku

Getting Started

Fork, clone locally & create a branch

Fork Resource-Portal repository and clone at your local

  • Fork and Clone the repo using
$ https://github.com/todi-2000/Resource-Portal.git

Setting Environment First Time

Basic Requirements

  1. Python
  2. pip

A virtual environment is a tool that helps keep dependencies required and the project isolated. If you wish to install a new library and write

pip install name_of_library

on the terminal without activating an environment, all the packages will be installed globally which is not a good practice if you’re working with different projects on your computer.

If this sounds a bit complicated, don’t worry so much because a virtual environment is just a directory that will contain all the necessary files for our project to run.

Installing venv (required once)

Windows

py -m pip install --user virtualenv
py -m venv env

Linux

python3 -m pip install --user virtualenv
python3 -m venv env

You have to start virtual environment everytime you start new terminal -

Windows

Using gitbash

. env/Scripts/activate

Using Powershell

. env\Scripts\activate

Linux

source env/bin/activate

Installing Requirements

Windows

pip install -r requirements.txt

Linux

pip3 install -r requirements.txt

Migrating Database

Windows

py manage.py migrate

Linux

python3 manage.py migrate

Create Superuser

Windows

py manage.py createsupeser

Linux

python3 manage.py createsupeser

Starting Development Server

Windows

py manage.py runserver

Linux

python3 manage.py runserver

Leaving the virtual environment

deactivate

Update requirements file (Critical)

If you have installed new dependency, the pip freeze command lists the third-party packages and versions installed in the environment.

Windows

pip freeze > requirements.txt

Linux

pip3 freeze > requirements.txt

Update Database

Everytime you change db models, you need to run makemigrations and migrate to update on database.

Windows

py manage.py makemigrations
py manage.py migrate

Linux

python3 manage.py makemigrations
python3 manage.py migrate

Maintainers✨


Manshi Todi

💻

Uses Git Uses HTML Uses CSS Uses JS forthebadge Built with love Built By Developers

About

This website can be used to share all the resources directly to students by teachers.

https://mmil-resource-portal.herokuapp.com/


Languages

Language:HTML 44.2%Language:Python 25.1%Language:SCSS 16.0%Language:CSS 13.2%Language:JavaScript 1.5%Language:Shell 0.1%Language:Procfile 0.0%