Skip to content
Open source learning management system.
TypeScript CSS JavaScript HTML
Branch: master
Clone or download
Latest commit a1560de Jan 31, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE
.storybook branding reverted to IESD, comment updated for Content Container comp… Jan 27, 2020
email cloned next-authenticate Jan 11, 2020
lib next-authenticate merge Jan 9, 2020
models
pages removing reference to dashboard feature Feb 1, 2020
public added spark logo 360x360 Jan 27, 2020
src removing pages from unprotected array Feb 1, 2020
.env.example Add example .env file (#67) Jan 21, 2020
.eslintignore merging v1 of next-authenticate in to portal project Jan 9, 2020
.eslintrc merging v1 of next-authenticate in to portal project Jan 9, 2020
.gitignore
.stylelintignore merging v1 of next-authenticate in to portal project Jan 9, 2020
.stylelintrc.json added support for more granular layout manipulation Feb 1, 2020
LICENSE.md cloned next-authenticate Jan 11, 2020
README.md update readme formatting Jan 28, 2020
index.d.ts
jest.config.js Refactored base - initial testing on dev (#73) Jan 27, 2020
jest.setup.js
jsconfig.json merging v1 of next-authenticate in to portal project Jan 9, 2020
next-env.d.ts merging v1 of next-authenticate in to portal project Jan 9, 2020
next-seo.config.js
next.config.js broke out components for storybook Jan 24, 2020
package.json added scripts for tiers - storybook Jan 27, 2020
tsconfig.json correct uikit import for typings Jan 28, 2020
yarn.lock Refactored base - initial testing on dev (#73) Jan 27, 2020

README.md

Spark Logo

Spark
Learning Management System


Spark is an open source learning management system, designed and built for Spark, a digital skills initiative led by a southern California nonprofit, Inland Empire Software Development, Inc. We promote free and open source software.


👨‍💻 Getting Started

To get started, make sure to fill out the .env file with the appropriate information. Make sure that all prerequisites are met or application won't operate correctly.

The application has two parts to it - the application itself and storybook.

auth screenshot

Getting Help

Any questions or for support, please open up an issue and label it appropriately support.

If you have any questions, please ask on our Slack. We welcome everyone to our Slack, so don't be afraid to join! Have fun coding!

Join link

Prerequisites

The minimum requirements to run this include:

  • Redis
  • MySQL
  • Mail SMTP provider
  • Yarn

🌐 Installing

A step by step series of examples that tell you how to get a development env running.

  1. Update your .env file with the required information. Make sure the mysql and redis information is correct. The mail information is used for the mail system, make sure that is correct or you won't receive account creation verification email or password reset emails. You also need to create a JWT key and an API secret key.

.env example input

JWTKEY=Ds~4lq~}.?*f~Ql$42J%aR7%SoKxaN
SECRET=SklZvh3a0PwQev901A1zT23vlG
  1. Install required packages
yarn install
  1. Start local development environment.
yarn dev
  1. Start storybook instance
yarn storybook

💡 Features

  • Pages for authentication (login, logout, reset), dashboard, welcome, reset password, confirmation, home and logged-out. HTTPOnly token (JWT) used.
  • Protected pages which can be turned on and off by page.
  • Redirection system based on user authentication state.
  • Email system with very simple template system.
  • SASS based.
  • Typescript based, makes development a breeze.
  • UIKit notification system.
  • Models directory and option for initial DB setup.
  • ESLint and Stylelint for development.
  • React Context handles state at the parent level.
  • Storybook integration for self documentation and design system generation.

🔨 Built With

  • Next.js
  • MySQL
  • Redis
  • Typescript
  • SASS
  • UIKit - A clean CSS library
  • Nodemailer
  • Storybook

For development:

  • ESLint
  • Stylelint
  • Jest

🤝 Contributing

All contributions are welcome and we invite everyone to open issues for suggestions and/or bugs.

  • If you want to contribute, please open up an issue.
  • If you start working on a feature, branch off of the master branch as it should be the most up-to-date.

📓 Development Team

  • 👤 Lloan Alas
  • 👤 Jacob Goodwin
  • 👤 Tony Nguyen
  • 👤 Andy Mendez
  • 👤 David Huang
  • 👤 Katherine Orho
  • 👤 Greg Rojas
  • 👤 Raul Jauregui

See also the list of contributors who participated in this project.

🗒 License

This project is licensed under the MIT License - see the LICENSE.md file for details

You can’t perform that action at this time.