All Projects → coding-blocks → Gondor

coding-blocks / Gondor

The greatest realm of Internal Tooling at Coding Blocks

Labels

Projects that are alternatives of or similar to Gondor

Ghchat
📱A chat application for GitHub. React + PWA + Node(koa2) + Typescripts + Mysql + Socket.io
Stars: ✭ 791 (+2829.63%)
Mutual labels:  scss
Stagy
Stagy is a tool for quick deployment of staging environments.
Stars: ✭ 19 (-29.63%)
Mutual labels:  scss
Essays
Stars: ✭ 921 (+3311.11%)
Mutual labels:  scss
Sassmagic
Collection best of Sass mixins and function
Stars: ✭ 795 (+2844.44%)
Mutual labels:  scss
Dropify
Override your input files with style — Demo here : http://jeremyfagis.github.io/dropify
Stars: ✭ 892 (+3203.7%)
Mutual labels:  scss
Uicookbook
A few recipes and build workflows for UI dev
Stars: ✭ 19 (-29.63%)
Mutual labels:  scss
Jekyll Theme Chirpy
A minimal, sidebar, responsive web design Jekyll theme that focuses on text presentation.
Stars: ✭ 773 (+2762.96%)
Mutual labels:  scss
Jekyll Podcaster
Podcaster is a dynamic Jekyll theme built for... Podcasters!
Stars: ✭ 25 (-7.41%)
Mutual labels:  scss
Bs4 Nodejs Static
A basic template to develop a website based on Bootstrap 4
Stars: ✭ 17 (-37.04%)
Mutual labels:  scss
Macadmininfo.github.io
Resources for both beginning and experienced administrators of Mac/Apple technology.
Stars: ✭ 23 (-14.81%)
Mutual labels:  scss
Vue Bootstrap With Material Design
Vue Bootstrap with Material Design - Powerful and free UI KIT
Stars: ✭ 803 (+2874.07%)
Mutual labels:  scss
Vue Chat
👥Vue全家桶+Socket.io+Express/Koa2打造一个智能聊天室。
Stars: ✭ 887 (+3185.19%)
Mutual labels:  scss
Yaru
Ubuntu community theme "yaru". Better than a 🌯.
Stars: ✭ 906 (+3255.56%)
Mutual labels:  scss
Liebling
Beautiful and clean Ghost theme that is easy and comfortable to use. To get the latest version please head over the releases page 👉🏼
Stars: ✭ 792 (+2833.33%)
Mutual labels:  scss
Sass A11ycolor
🌈 Generate the nearest accessible color with Sass.
Stars: ✭ 24 (-11.11%)
Mutual labels:  scss
Primitive
⛏️ ‎ A front-end design toolkit for developing web apps.
Stars: ✭ 783 (+2800%)
Mutual labels:  scss
Espass.github.io
Website http://espass.it
Stars: ✭ 19 (-29.63%)
Mutual labels:  scss
Amazeui Touch
Web Components for mobile devices based on React.
Stars: ✭ 936 (+3366.67%)
Mutual labels:  scss
Covalent Text Editor Nightly
Nightly builds of https://github.com/teradata/covalent text-editor module
Stars: ✭ 24 (-11.11%)
Mutual labels:  scss
Gwsl
THIS IS THE GWSL WEBSITE SOURCE. Please see https://github.com/Opticos/GWSL-Source
Stars: ✭ 23 (-14.81%)
Mutual labels:  scss

Gondor

A platform for internal tools at Coding Blocks, hosted at https://tools.codingblocks.com. This project is part of boss, please check for issues here. For any queries regarding setup or contribution, feel free to join discord and post in #gondor channel.

Setup

Installing Dependencies

yarn

Setting Up Database

Follow the postgresql guidelines, download an install postgres v9.6.

Create Database

psql -U postgres
> create database gondor;
> \q

Update Env Vars

touch .env

#.env
DB_HOST=127.0.0.1 #optional
DB_USERNAME=postgres #or any other postgres username
DB_NAME=gondor #optional
DB_PASSWORD= #postgres user password if any

Run Migrations

yarn sequelize db:migrate

Setting Up OneAuth

This project uses OneAuth as a single sign on server. For authentication it is required for OneAuth to be either running locally or to have a client application created here.

(optional) Please follow the instructions here to setup up OneAuth locally.

Config for OneAuth Client App

domain = http://localhost:3000
default url = http://localhost:3000
callback url = http://localhost:3000/api/login/callback

If you have setup OneAuth locally, then create a client application, get the ONEAUTH_CLIENT_ID & ONEAUTH_CLIENT_SECRET and add it to your .env.

Otherwise, similarly create a client application for authentication here, get the ONEAUTH_CLIENT_ID & ONEAUTH_CLIENT_SECRET and add it to your .env.

Add Env Vars

#.env
ONEAUTH_URL=http://localhost:3838 #include only if oneauth setup locally
ONEAUTH_CLIENT_ID=<client_id>
ONEAUTH_CLIENT_SECRET=<client_scret>

Running Development Server

yarn dev

Open http://localhost:3000 with your browser to see the result.

Fixing Windows Symlink Issue

Run the following command from root of the project:

bash ./bin/windows_start.sh

You might be needed to enable Windows Subsystem for Linux feature on your OS or run the command inside git bash.

Development

There are multiple tools used to make developer experience smooth. You can suggest your ideas in form of issues.

Seed Users

If you don't have a local OneAuth setup and want to seed database with random users, you can use the command below. The caveat is that you won't be able to login through their accounts. But you may impersonate them using your own account (admin role required).

npx babel-node api/bin/seedUsers.js

Update User Role

Applications has 3 user roles with different AuthorizationPolicy attached to them. Due to missing user management feature in the UI, use the following script to update the role of any user.

 npx babel-node api/bin/updateRole <username> <role(Admin, Member, User)>

Impersonate User

During local development setup, it takes a lot of time to login and log out of different user profile for testing various features. To solve this problem there exists the impersonate user functionality.

If your logged in user is an Admin, you can add a cookie named iuid with the value of any other user's id. On reload you will be logged in as the other user. Removing the cookie and reloading will login you back as the original user.

The same functionality can be used for debugging on production.

Learn More

Take a look at the following resources:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].