Skip to content

Instantly share code, notes, and snippets.

Avatar

jimmycliff obonyo obonyojimmy

  • Kenya
View GitHub Profile
@obonyojimmy
obonyojimmy / 00-https-single-instance.yaml
Created May 14, 2020 — forked from the-vampiire/00-https-single-instance.yaml
AWS EB elastic beanstalk single instance nodejs nginx SSL/HTTPS ebextensions config file
View 00-https-single-instance.yaml
# REQUIREMENTS
# set the following configuration environment variables at: configuration -> software -> modify -> environment variables
# CERT_EMAIL: the email address used for registering the cert
# CERT_DOMAIN: the domain to create a cert for
# EB environment URL (listed at the top of the environment page) or a custom domain, custom domains must have a DNS CNAME record pointing to the EB environment URL
# !! MUST NOT have "http://" prefix or the trailing "/" at the end !!
# EXAMPLES
View Dockerfile
FROM node:12.16.1
# Install Meteor
ENV METEOR_ALLOW_SUPERUSER true
RUN curl https://install.meteor.com/ | sh
WORKDIR /home
ADD entrypoint.sh .
View @ IndexedDB Full Text Search (Proof of Concept).md

This demonstrates the implementation of full text search for documents in Indexed DB.

  • Word-breaking and stemming is used to create a list of terms for each document.
  • Document records are annotated with the list of terms when added to the database.
  • A multi-entry index on the list of terms is populated.
  • A query is similarly processed into a list of terms.
  • A join over the terms is implemented using multiple cursors on the index.

The necessity of annotating records with the word list to populate the index is a limitation of the current Indexed DB API. A feature request to support custom

@obonyojimmy
obonyojimmy / authorize.js
Created Mar 19, 2020 — forked from kndt84/authorize.js
Sample code: how to refresh session of Cognito User Pools with Node.js and Express
View authorize.js
const AWS = require('aws-sdk');
const CognitoUserPool = require('amazon-cognito-identity-js-node').CognitoUserPool;
const CognitoUserSession = require('amazon-cognito-identity-js-node').CognitoUserSession;
const CognitoUser = require('amazon-cognito-identity-js-node').CognitoUser;
const CognitoIdToken = require('amazon-cognito-identity-js-node').CognitoIdToken;
const CognitoAccessToken = require('amazon-cognito-identity-js-node').CognitoAccessToken;
const CognitoRefreshToken = require('amazon-cognito-identity-js-node').CognitoRefreshToken;
const cfg = require('config').config;
const COGNITO_IDENTITY_POOL_ID = cfg.COGNITO_IDENTITY_POOL_ID;
@obonyojimmy
obonyojimmy / delete_git_submodule.md
Created Mar 14, 2020 — forked from myusuf3/delete_git_submodule.md
How effectively delete a git submodule.
View delete_git_submodule.md

To remove a submodule you need to:

  • Delete the relevant section from the .gitmodules file.
  • Stage the .gitmodules changes git add .gitmodules
  • Delete the relevant section from .git/config.
  • Run git rm --cached path_to_submodule (no trailing slash).
  • Run rm -rf .git/modules/path_to_submodule (no trailing slash).
  • Commit git commit -m "Removed submodule "
  • Delete the now untracked submodule files rm -rf path_to_submodule
View initial-sync-data.js
function fullSync(page = 1) {
let open = indexedDB.open("books", 1);
// Set up the database schema
open.onsuccess = evt => {
let db = open.result;
fullSyncPage(db, 1);
};
}
@obonyojimmy
obonyojimmy / cognito.yaml
Created Oct 14, 2019 — forked from singledigit/cognito.yaml
Create a Cognito Authentication Backend via CloudFormation
View cognito.yaml
AWSTemplateFormatVersion: '2010-09-09'
Description: Cognito Stack
Parameters:
AuthName:
Type: String
Description: Unique Auth Name for Cognito Resources
Resources:
# Creates a role that allows Cognito to send SNS messages
SNSRole:
@obonyojimmy
obonyojimmy / elastic-beanstalk-cfn.yaml
Last active May 18, 2019
elastic beanstalk cloudformation template
View elastic-beanstalk-cfn.yaml
Outputs: {}
AWSTemplateFormatVersion: 2010-09-09
Parameters:
InstanceTypeFamily:
NoEcho: 'true'
Type: String
Description: WebServer EC2 instance type family
Default: t1
LogPublicationControl:
ConstraintDescription: must be Boolean.
@obonyojimmy
obonyojimmy / fix-npm.config
Created May 13, 2019 — forked from nnnikolay/fix-npm.config
Not the final AWS Elastic Beanstalk deployment for NodeJS. Why not the final? some parts are missing or not tested, like configuration changes. Currently it has been tested for application deployment only.
View fix-npm.config
files:
"/opt/elasticbeanstalk/env.vars":
mode: "000775"
owner: root
group: users
content: |
# enable extra logs
set -xe
# Defines variables for use by the other scripts below.
@obonyojimmy
obonyojimmy / react-cognito-auth-js.js
Created May 8, 2019 — forked from gabeweaver/react-cognito-auth-js.js
React + Cognito User Pools + Cognito Identity JS Example
View react-cognito-auth-js.js
/*
This example was built using standard create-react-app out of the box with no modifications or ejections
to the underlying scripts.
In this example, i'm using Google as a social provider configured within the Cognito User Pool.
Each step also represents a file, so you can see how I've chosen to organize stuff...you can do it however
you'd like so long as you follow the basic flow (which may or may not be the official way....but its what I found that works.
The docs are pretty horrible)