Skip to content

Commit

Permalink
Final
Browse files Browse the repository at this point in the history
  • Loading branch information
Pratyaksh2309 committed Oct 17, 2024
0 parents commit e5f27f8
Show file tree
Hide file tree
Showing 329 changed files with 84,201 additions and 0 deletions.
33 changes: 33 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
name: "Bug report \U0001F41B"
about: Create a report to help us improve
title: ''
labels: bug
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:

1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**

- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea or feature for this project
title: ''
labels: enhancement
assignees: ''

---

**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.
31 changes: 31 additions & 0 deletions .github/workflows/django.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Django Tests

on:
push:
branches: ["main"]
pull_request:
branches: ["main"]

jobs:
build:
runs-on: ubuntu-latest
strategy:
max-parallel: 4
matrix:
python-version: ["3.10"]

steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
cd ./socbackend/
pip install -r requirements.txt
- name: Run Tests
run: |
cd ./socbackend/
python manage.py test
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
venv/
20 changes: 20 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v2.3.0
hooks:
- id: check-yaml
- id: end-of-file-fixer
exclude: requirements.txt
- id: trailing-whitespace
- repo: https://github.com/psf/black
rev: "23.9.0"
hooks:
- id: black
exclude: (migrations)
- repo: https://github.com/pycqa/isort
rev: 5.12.0
hooks:
- id: isort
name: isort (python)
args: ["--profile", "black", "--filter-files"]
exclude: migrations
68 changes: 68 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
If you would like to contribute to the project, please follow these guidelines:

1. Fork the original WnCC repository to your personal account.

2. Clone the forked repository locally.

3. Create a new branch for your feature or bug fix.

4. Make the necessary changes and commit them.

5. Push your changes to your forked repository.

6. Submit a pull request to the main repository with your branch, explaining the changes you made and any additional information that might be helpful for review.

# Usage

Clone the Git repository:

```shell
# Clone your fork of the GitHub Repo
git clone https://github.com/your_username/SoC-Portal.git
```

Install JS packages

```shell
cd frontend
npm install
```

Create Virtual Environment:

```shell
cd backend
python3 -m venv venv
./venv/Scripts/Activate.ps1 # Windows
source ./venv/bin/activate # Linux/MacOS
pip3 install -r requirements.txt
```

Run Application

```shell
# Frontend (in ./frontend/)
npm run start
# Backend (in ./backend/)
python manage.py runserver
```

# Resources

## Backend
Django - https://docs.djangoproject.com/en/4.2/

Django-Rest Framework - https://www.django-rest-framework.org/

Simple JWT - https://django-rest-framework-simplejwt.readthedocs.io/en/latest/

## Frontend

React Framework - https://legacy.reactjs.org/docs/getting-started.html

JavaScript - https://javascript.info/

React Router - https://reactrouter.com/en/main

Axios - https://github.com/axios/axios

42 changes: 42 additions & 0 deletions GOALS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Goals <!-- omit from toc -->

A rough list of all the goals to meet in our current plan for this project.

- [Authentication](#authentication)
- [Projects Page](#projects-page)
- [Dashboard](#dashboard)
- [Mentor Registraion](#mentor-registraion)
- [Mentee Registration](#mentee-registration)

## Authentication

- [ ] Implement basic authentication
- [ ] Back-end
- [ ] Front-end
- [ ] Implement logout functionality

## Projects Page

- [ ] Pages for displaying projects (past + current)
- [ ] Card-based list view
- [ ] Project detail view

## Dashboard
- [ ] Mentor Registration View
- [ ] Mentee Registration View
- [ ] Mentor Dashboard
- [ ] Mentee Dashboard

## Mentor Registraion

- [ ] Basic project submission
- [ ] API endpoints
- [ ] Webpage
- [ ] Allow Google Forms like **auto-save**

## Mentee Registration

- [ ] Basic mentee registration
- [ ] API endpoints
- [ ] Webpage
- [ ] _"Add to Preferences"_ button on project's detail page for mentee registrations
52 changes: 52 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# SoC-Portal

### Official repository for the SoC Portal Project created by TTY16

#### This repository is a part of HelloFOSS '23

An on-going project of the Web and Coding Club. Built using Django REST Framework and React.

# Getting Started

To learn the usage of this repository and begin contributing go to the **Usage** section of [CONTRIBUTING.md](CONTRIBUTING.md)


# Documentation

## Frontend

This project generates documentation using [StoryBook](https://www.npmjs.com/package/@storybook/react). Make sure that you add JSDoc comments for the components. To access the documentation, run the following commands on your terminal:

```bash
# installation
npm install --save-dev @storybook/react
# configuration
npx sb init
# to view the documentation
npx storybook
```

## Backend

### API Documentation
The project generates API documentation using [drf-yasg](https://github.com/axnsan12/drf-yasg), provided through Swagger and ReDoc. To access the API documentation, follow these steps:

Open a web browser and navigate to one of the following endpoint:

```bash
http://127.0.0.1:8000/redoc
http://127.0.0.1:8000/swagger
```

### Code Documentation
The documentation for the back-end source code is automatically generated by Sphinx. You can access it using the backend/docs/_build/html/index.html as an entry-point (open it on the browser).

Whenever you make any changes in the code, before making a pull request make sure you run the following commands to generate documentation for the changes you have made.

```shell
cd backend/docs
./make.bat html
```
# Contributing

Check out [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines on contributing to the repo.
6 changes: 6 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit e5f27f8

Please sign in to comment.