Quento-Solutions / Quento

Quento’s suite of tools helps students work together to use, create, and share academic tools and resources
http://quento.ca
MIT License
4 stars 6 forks source link

Quento

Description

Welcome to Quento, a collection of utilities created by students, for students. Quento is an open source web app created by high school students using Vue.js, with the sole purpose of creating and compiling useful software to a single location to help students better manage their education.

Build Setup

# install dependencies
$ npm install # Or yarn install

# serve with hot reload at localhost:3000
$ npm run dev

# build for production and launch server
$ npm run build
$ npm start

# generate static project
$ npm run generate

Sitemap (Addresses from Quento\pages)

Folders

An open letter to whoever needs to build a new page

Here is the default layout of the page (also at localhost:3000/basepiece or quento.ca/basepiece) Enjoy!

div Layout Main
  userGuideModal
  userInfoModal
  Sidebar
  div contentArea
    div contentOverlay
    div contentWrapper
      Navbar
      div Router View
        div Router Content
          transition thingy
          div content-area__content (ie. the content of the area of the content of the page, go naming departement)
            another transition
              (YOUR CONTENT HERE)
          /div
        /div
      /div
    /div
  /div
/div
/div
/div
/div
/div
/div
/div
(etc.)

Types and Objects which power this project

All files are imported to the Vue Application through ~\types\index.ts

index.ts
β”œβ”€β”€ Notes.ts
  |________OBJECTS_____
    β”œβ”€β”€ class Note
    β”œβ”€β”€ interface Note_t
    β”œβ”€β”€ interface Note_t_F
    β”œβ”€β”€ type Note_t_A
    β”œβ”€β”€ interface Note extends Note_t
  β”œβ”€β”€ DEPEDANT ON: Subjects.ts
β”œβ”€β”€ Subjects.ts
  |________OBJECTS_____
    β”œβ”€β”€ const{Group} SubjectGroups -> Sub-Subjects
    β”œβ”€β”€ const[number] AllSubjects -> Subjects
    β”œβ”€β”€ type Subject_O
    β”œβ”€β”€ const[Subjects] SubjectList -> default:empty
    β”œβ”€β”€ const{Subject} SubjectOptions -> true|false
    β”œβ”€β”€ const{Subject} SubjectIconList -> bx-___
    β”œβ”€β”€ type SubjectGroup_O
    β”œβ”€β”€ const[SubjectGroup_O] SubjectGroupList -> default:empty
    β”œ DEPENDANT ON : Schools.ts
β”œβ”€β”€ Schools.ts
|________OBJECTS_____
  β”œβ”€β”€ const[number] SchoolList -> Schools
  β”œβ”€β”€ type School_O
β”œβ”€β”€ Suggestions.ts
  β”œβ”€β”€ 
β”œβ”€β”€ Users.ts
  β”œβ”€β”€ DEPENDANT ON: Subjects.ts, Groups.ts
β”œβ”€β”€ Questions.ts
  β”œβ”€β”€ DEPENDANT ON: Schools.ts, Subjects.ts, firebaseTypes.ts
β”œβ”€β”€ Responses.ts
  β”œβ”€β”€ DEPENDANT ON: firebaseTypes.ts
β”œβ”€β”€ Newsletters.ts
  β”œβ”€β”€ 
β”œβ”€β”€ firebaseTypes.ts
  β”œβ”€β”€ DEPENDANT ON: Not firebase apparently

Store Management

All store is based around util/store-accessor.ts

Firebase

Store files -> firestore.ts -> firebase.ts

Documentation/Dependencies

For detailed explanation on how things work, checkout the following docs:

Vue: Vue.js Nuxt: Nuxt.js Vuesax: Vuesax Tailwind: Tailwind.css