Skip to content

Commit

Permalink
Merge pull request #68 from UTDNebula/develop
Browse files Browse the repository at this point in the history
Updating Master Branch w/ Working Develop
  • Loading branch information
dlaunikitis authored Mar 24, 2023
2 parents 8848e7e + 8d6c456 commit 6c9f22e
Show file tree
Hide file tree
Showing 88 changed files with 36,690 additions and 4,172 deletions.
1 change: 1 addition & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
__NEXT_CONCURRENT_FEATURES=true
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -35,3 +35,7 @@ yarn-error.log*

# typescript
*.tsbuildinfo

# lint cache
.eslintcache
*.cache
10 changes: 5 additions & 5 deletions CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Request Project Lead
* @eboysen
* @iamwood

# Here for later as implementation becomes larger
# Request Project maintainers for any of the major src directories
# components/**/* @UTDNebula/athena
# modules/**/* @UTDNebula/athena
# pages/**/* @UTDNebula/athena
# styles/**/* @UTDNebula/athena
# components/**/* @UTDNebula/UTD-Trends
# modules/**/* @UTDNebula/UTD-Trends
# pages/**/* @UTDNebula/UTD-Trends
# styles/**/* @UTDNebula/UTD-Trends
23 changes: 12 additions & 11 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Athena Contributor's Guide
# UTD-Trends Contributor's Guide

_Information on how to contribute to this project._

Expand All @@ -7,7 +7,7 @@ _Information on how to contribute to this project._
If you want to make a non-code contribution to this project like design, writing,
or other types of additions/modifications, contact
[core-maintainers@utdnebula.com](mailto:core-maintainers@utdnebula.com)
with the subject line [nebula-athena] and your proposed set of changes. If
with the subject line [nebula-UTD-Trends] and your proposed set of changes. If
applicable, make sure to link specifically where in the project the changes
should be made. More detail is better.

Expand All @@ -34,7 +34,7 @@ This is the process for contributing code to the repository:

### Opening an Issue

Athena uses the following issue labels to designate between type:
UTD-Trends uses the following issue labels to designate between type:

- `Type: Feature Request` for user-facing or API feature requests
- `Type: Security Vulnerability` for security vulnerability reports
Expand Down Expand Up @@ -89,13 +89,13 @@ you commit to.
Instead of doing this:

```shell script
git clone https://github.com/UTDNebula/athena.git
git clone https://github.com/UTDNebula/UTD-Trends.git
```

You would do this:

```shell script
git clone https://github.com/<your-username>/athena.git
git clone https://github.com/<your-username>/UTD-Trends.git
```

### Branching Strategy
Expand Down Expand Up @@ -187,8 +187,8 @@ While you are working on your contribution, you'll likely have questions about
specific parts of your code. Project maintainers will try their best to address
them and help you as you finish your pull request. As much as possible, try to
keep questions about code embedded within the pull request itself. For anything
else, post them in the relevant Project Nebula channel in the [ACM Discord](https://acmutd.co/discord)
or open a [Github Discussion](https://github.com/UTDNebula/athena/discussions).
else, post them in the relevant channel in the [Nebula Labs Discord](https://discord.gg/tcpcnfxmeQ)
or open a [Github Discussion](https://github.com/UTDNebula/UTD-Trends/discussions).

All pull requests must pass all status checks and must be approved by one
maintainer before being merged into the default `develop` branch. Once a pull
Expand All @@ -207,14 +207,15 @@ certain you're ready to release. The process goes like this:
And that's it. The release GitHub Action will take care of the rest. Semantic
Release will automatically version the project.

Releases names use Semantic Versioning (SemVer), following the `MAJOR.MINOR.FIX`
Release names use Semantic Versioning (SemVer), following the `MAJOR.MINOR.FIX`
version format. In the case of projects that have largely symbolic "major"
versions, it is up to the maintainers to determine what meets the qualification
as a "breaking change" and label commits accordingly when merging into `master
For more information, see the [FAQ](https://www.conventionalcommits.org/en/v1.0.0/#how-does-this-relate-to-semver):

> `fix` type commits should be translated to PATCH releases. `feat` type commits
> should be translated to MINOR releases. Commits with `BREAKING CHANGE` in the
> commits, regardless of type, should be translated to MAJOR releases.
Deployment and hosting for this project is handled by ACM Development. Project
maintainers (not contributors) are responsible for service upkeep and responding
to issues in hosting and database management.
> Deployment and hosting for this project is handled by ACM Development. Project
> maintainers (not contributors) are responsible for service upkeep and responding
> to issues in hosting and database management.
32 changes: 14 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,30 +1,30 @@
# Athena
# UTD-Trends

_Athena a data visualization tool built to help students view historical course and section data using the Nebula API_
_UTD-Trends a data visualization tool built to help students view historical course and section data using the Nebula API_

[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg)](http://commitizen.github.io/cz-cli/)

## About

### Overview

Athena offers students and faculty an accessible and easily digestible means
UTD-Trends offers students and faculty an accessible and easily digestible means
of viewing the data stored in the Nebula API. This front-end for the API offers
data visualization tools so that students can view agregated data and make more informed
decisions on their coursework.

### Inspiration

For years the students of UTD have made use of the UTD Grades tool to access
For years the students of UTD have made use of the UTD Grades tool to access
information about their coursework in conjunction with other web applications like
Rate My Professor.
Rate My Professor.

Now Project Nebula hopes to offer students a comprehensive view of course information
all in a single application through Project Athena. The hope is to offer students an all
all in a single application through Project UTD-Trends. The hope is to offer students an all
in one experience and streamline the data gathering experience of students while providing
better data gathered through UTD specific sources rather than the crowd sourcing of other sites.

Athena hopes to offer more tooling to students than previously available and build upon the
UTD-Trends hopes to offer more tooling to students than previously available and build upon the
successes of UTD Grades to enhance the student experience.

### Features
Expand All @@ -49,10 +49,10 @@ Additionally, see the Project Nebula-wide contributors [guide](https://about.utd
for more info.

Once you're ready to make some changes, see the
[issues](https://github.com/UTDNebula/athena/issues) for the repository.
[issues](https://github.com/UTDNebula/UTD-Trends/issues) for the repository.

If you want to brainstorm, share ideas or ask questions, start a discussion in
the [Discussions](https://github.com/UTDNebula/athena/discussions) section.
the [Discussions](https://github.com/UTDNebula/UTD-Trends/discussions) section.

### Set-up

Expand All @@ -61,17 +61,13 @@ installation. To start, clone the repository, and then run `npm run dev` to laun
a local development server at [`localhost:3000`](https://localhost:3000) by default.

```bash
git clone https://github.com/UTDNebula/athena.git
cd athena
git clone https://github.com/UTDNebula/UTD-Trends.git
cd UTD-Trends
npm install
npm run dev
```

### Contact

This project is maintained by ACM Development, a division of ACM UTD. If you have
any questions about this project or Project Nebula, see the [#ask-nebula](https://discord.com/channels/692266201644007424/811419400753905714)
channel on the ACM Discord server (accessible at [acmutd.co/discord](https://acmutd.co/discord)).

For more formal inquiries, send us a message at core-maintainers@utdnebula.com
with "[nebula-web]" in the title. Please be as detailed as possible so we can
best assist you.
This project is maintained by Nebula Labs. If you have
any questions about this project or Nebula Labs, see the [discord server](https://discord.gg/3p4H44zjTt)
5 changes: 5 additions & 0 deletions apitesting.http
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
GET https://api.utdnebula.com/course/search?subject_prefix=CS&course_number=4337 HTTP/1.1

###

GET https://api.utdnebula.com/course/search HTTP/1.1
118 changes: 118 additions & 0 deletions components/autocomplete.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
// import autocompleteGraph from '../data/autocomplete_graph.json';
// import { DirectedGraph } from 'graphology';
//
// type SearchQuery = {
// prefix?: string;
// number?: string;
// professorName?: string;
// sectionNumber?: string;
// };
//
// type NodeAttributes = {
// character: string;
// data?: SearchQuery;
// visited: boolean;
// };
//
// const graph: DirectedGraph<NodeAttributes> = new DirectedGraph({
// allowSelfLoops: false,
// });
// graph.import(autocompleteGraph as Object);
// const root = '0';
// type QueueItem = {
// node: string;
// characters?: string;
// toNext: boolean;
// };
//
// function bfsRecursionToNextData(queue: QueueItem[]) {
// const queueItem = queue.shift();
// //console.log(graph.getNodeAttribute(queueItem?.node, 'character'));
// if (graph.getNodeAttribute(queueItem?.node, 'visited')) {
// return;
// }
// graph.setNodeAttribute(queueItem?.node, 'visited', true);
// const data = graph.getNodeAttribute(queueItem?.node, 'data');
// if (typeof data !== 'undefined') {
// return data;
// } else {
// graph.forEachOutNeighbor(queueItem?.node, (neighbor) => {
// queue.push({
// node: neighbor,
// toNext: true,
// });
// });
// }
// return;
// }
//
// function bfsRecursion(queue: QueueItem[]) {
// const queueItem = queue.shift();
// if (
// queueItem?.characters?.[0] ===
// graph.getNodeAttribute(queueItem?.node, 'character')
// ) {
// //match
// //console.log('match: ', queueItem?.characters, queueItem?.characters?.length === 1);
// if (queueItem?.characters?.length === 1) {
// //last character
// graph.forEachOutNeighbor(queueItem?.node, (neighbor) => {
// //console.log('toNext: ', graph.getNodeAttribute(neighbor, 'character'));
// queue.push({
// node: neighbor,
// toNext: true,
// });
// });
// const data = graph.getNodeAttribute(queueItem?.node, 'data');
// if (typeof data !== 'undefined') {
// //has data
// return data;
// }
// } else {
// graph.forEachOutNeighbor(queueItem?.node, (neighbor) => {
// //console.log('queue: ', graph.getNodeAttribute(neighbor, 'character'));
// queue.push({
// node: neighbor,
// characters: queueItem?.characters?.slice(1),
// toNext: false,
// });
// });
// }
// }
// }
//
// type bfsReturn = SearchQuery | undefined;
//
// export function searchAutocomplete(query: string) {
// query = query.trim().toUpperCase();
// graph.updateEachNodeAttributes((node, attr) => {
// return {
// ...attr,
// visited: false,
// };
// });
// let queue: QueueItem[] = [];
// graph.forEachOutNeighbor(root, (neighbor) => {
// queue.push({
// node: neighbor,
// characters: query,
// toNext: query.length === 0, //bfsToNext if blank search string
// });
// });
// let results: SearchQuery[] = [];
// while (queue.length) {
// let response: bfsReturn;
// if (queue[0].toNext) {
// response = bfsRecursionToNextData(queue);
// } else {
// response = bfsRecursion(queue);
// }
// if (typeof response !== 'undefined') {
// results.push(response);
// }
// }
// return results;
// }
export function dummmy(input: string) {
return input;
}
7 changes: 7 additions & 0 deletions components/common/Carousel/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
### Carousel Example
```ts
<Carousel>
<h1>This is the grades tab!</h1>
<h1>This is the detailed tab!</h1>
</Carousel>
```
Loading

1 comment on commit 6c9f22e

@vercel
Copy link

@vercel vercel bot commented on 6c9f22e Mar 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.